MBAにLaravelな開発環境を構築してみる(中編)
-これまでのあらすじ-
パルチザンが環境構築を終えてサーバ起動したらエラーになった。
~大きな流れ~
・サーバ起動しよう
・マイグレーションしよう
・ブラウザで実行しよう
~やってみよう~
・サーバ起動しよう
Mcrypt PHP extension required.
どこかで見たことがある。
そう、composer.pharを入れる時。
あの時は須藤を呼んだらうまく行った。
きっと今回もうまくいくだろう。
sudo php artisan serve
結果。
Mcryptが無いとは言われなかったが、起動しかけてエラーになった。
解決方法。
ファイル作る。
PC039:ekikore resaku$ touch ./.env.local.php
そのファイルに書き込む。
PC039:ekikore resaku$ vi ./.env.local.php
こんな内容を書き込む。
return [
'mysql.database' => 'homestead',
'mysql.username' => 'homestead',
'mysql.password' => 'secret',
'aws.key' => '',
'aws.secret' => '',
'aws.region' => '',
];
homesteadとかsecretはLaravelデフォルトのものですね。
再度。
php artisan serve
で起動成功。須藤なんていらなかったんや!
もっともこれはサーバ起動のための最低限のもの。
プロジェクトによってDBやユーザー、パスワードは変わってくるはずなので、いずれマイグレーション
php artisan migrate
の時にエラーになる。
その時は.env.local.phpをプロジェクトに合わせて変更すればいい。
・マイグレーションしよう
実行。
php artisan migrate:refresh --seed
結果。
PHP Fatal error: Can't use method return value in write context in /Users/resaku/Desktop/ekikore/app/common/Validator/InputColumnVariable.php on line 22
{"error":{"type":"Symfony\\Component\\Debug\\Exception\\FatalErrorException","message":"Can't use method return value in write context","file":"\/Users\/resaku\/Desktop\/ekikore\/app\/common\/Validator\/InputColumnVariable.php","line":22}}PC039:ekikore resaku$
そのファイルのその行を追うと、「empty」にたどり着く。
嫌な予感。
ググるとどれもemptyにたどり着くものばかり。
これ。
変数が空であるかどうかを検査する – PHP
PHP 5.5 より前のバージョンでは、empty() がサポートするのは変数だけです。 それ以外の値をチェックするとパースエラーになります。
PHP5.4以下だとエラーになります。
あれ?5.5入れたんじゃないの?
php -v
PHP「ワタシハ5.4デス」
なんで?
5.5を入れたはずなのに5.4になったのか。
あるいはMacに最初から入っているPHP(5.4)を見ているのか。
PHPのバージョン管理ならphpenv。
そういえばこれ上手く入らなかった気がする。
phpenvは1、2時間かけて調べていじってみたけど、どうにもならない。
それならどうするか。
どうにもならないなら、どうもしない。
phpenvを使わなければいいのだ。
phpenvはバージョン管理の手法の一つであって、5.5に直接関係するものではない。
大事なことは5.5に上げること。
カップラーメン作るのにお湯を沸かすにはヤカンが良いか?ナベが良いか?は手段の問題。
大事なことはカップラーメンを作ることなのだ。
うむ。
という訳でラーメンの作り方。
PC039:local resaku$ curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5
PC039:local resaku$ export PATH=/usr/local/php5/bin:$PATH
四の五の言わずにこれを叩けば、とりあえず5.5に上がる。
という訳で
php artisan migrate:refresh --seed
マイグレーションも完了しました。
・ブラウザで実行しよう
今回のプロジェクトで使う画面を開いてみました。
余裕余裕。
余裕でエラーが出ました。
なんで?
そのエラー行を追うと、「empty」にたどり着く。
あれ?5.5入れたんじゃないの?
php -v
PHP「ワタシハ5.5デス」
だよね?5.5入ってるよね?
ブラウザでphpinfo()
PHP「ワタシハ5.4デス」
あ…ありのまま 今 起こった事を話すぜ!(ry
-つづく-
adpc
adpc
関連記事
-
MBAにLaravelな開発環境を構築してみる(後編)
-これまでのあらすじ- php -v 「ワタシハPHP5.5デス」 phpinf …
-
TJCT!プロセスの暗殺教室
ブラウザ上で巨大なデータを扱ったら、応答が返ってこない・・・・ ブラウザを閉じた …
-
MBAにLaravelな開発環境を構築してみる(前編)
Laravelを使います。 今世界中で注目されているフレームワークです。 まず響 …
-
コマンドラインでMySQLを操作するまとめ(復習)
phpMyAdminなどで運用中心にやっているとコマンドラインを忘れがち。 なの …
-
dumpした大容量sqlファイルでDBを構築-IT版本当にあった怖い話(レベル8)
途中までは、よくある話。 「dumpしたsqlファイル送るからそっちのローカルに …
-
マイグレーション~DB構造の変遷を共有する
PHPファイルをローカルで作業してテストして、gitでcommitする。 これは …
-
MBAの英字キーボードをKarabinerで使いやすくする
れさくさんの貧弱なMBAを見かねて、MBAが貸与されました。 なんとメモリは2倍 …
-
MySQLをチューニング3:MySQLの設定見直す
データベースが重いからMySQLをチューニングするに書いた四天王の三人目「MyS …