Open41

PHP(Laravel)メモ

merutinmerutin

composer.jsonの内容をインストールする。
composer-lock.jsonと整合性取れてないって言われたのでいったん削除して再度実施する

composer install
merutinmerutin

何もわからないので、とりあえず、dockerコンテナに入ってみて、URIのリストを見てみる

docker exec -it コンテナ名 bash
php artisan route:list

なんかエラーがでるので、1個ずつ調べて解消する。
どうやらControllerが不足していたらしいのでコメントアウトする

merutinmerutin

laravel.logのパーミッションエラーが。。なぜだ。とりあえずファイルを許可する

chmod 777 laravel.log
merutinmerutin
No application encryption key has been specified.

って画面に出たので、Web画面上で提案された通りになんか入れる。

merutinmerutin

マジックメソッドは、 ある動作がオブジェクトに対して行われた場合に、 PHP のデフォルトの動作を上書きする特別なメソッドです。

https://www.php.net/manual/ja/language.oop5.overloading.php#object.call

__call() は、 アクセス不能メソッドをオブジェクトのコンテキストで実行したときに起動します。

__callStatic() は、 アクセス不能メソッドをstatic メソッドとして呼び出した場合に起動します。

らしい。

merutinmerutin

最新ではここがviteになっているらしい。やっとつながってきた

merutinmerutin
file_put_contents(/var/www/html/storage/framework/sessions/xxxx): Failed to open stream: Permission denied

なんかエラーがでたので、権限変更する

merutinmerutin

雑にPHPの動作確認をしたいときに便利だったコマンド。Laravelとかのフレームワークだと多分うまく起動しない

docker run --rm -it -p 8000:8000 -v $PWD:/var/www/html php php -S 0.0.0.0:8000 /var/www/html/xxx.php
merutinmerutin

ログを確認する

DB::enableQueryLog()
dump(DB::getQueryLog()) && DB::flushQueryLog();