PHP

EloquentでのNULLABLEな日付の扱いでoptional()ヘルパ関数が便利

アクセサの値を普通に表示するだけなら、?:演算子だけでいい。PHPはnullをechoしても特に問題ないので。 created_at ?: 'default'; ただ、フォーマットしたい場合はちょっとやっかい。以下はcreated_atがNULLの場合、nullのメソッドを呼び出してエラーになる…

Eloquentのモデルのイベントをリスニングする

ドキュメントにも一応書いてあるけどなんか半端なので。 https://laravel.com/docs/5.6/eloquent#events https://readouble.com/laravel/5.5/ja/eloquent.html#events モデルの$dispatchesEventsに、['イベント名' => イベントクラス::class, ...]の形の配列…

composer updateでよくわからないエラーメッセージが出たが、指定したブランチがないだけだった

PHP

あるアプリケーションが依存している Git リポジトリがあったのだが、master 以外のブランチを参照することになった。ので、composer.json を更新して composer update したら、The requested package <VENDOR>/<REPO> <BRANCH> exists as <VENDOR>/<REPO>[dev-master] but these are rejected by</repo></vendor></branch></repo></vendor>…

PHPカンファレンス関西2016に行ってきた 前編: トーク感想

PHP

先週土曜日、PHPカンファレンス関西2016に行ってきた。PHPカンファレンスは初めて。と いうか、カンファレンスとか勉強会とかに行くこと自体初めて。 前々から興味はあったが、なかなか機会がなかった。今回もだいぶ前から行こうと決めて なかったら行けてな…

Composer の autoloader のハッシュ値はなに?

PHP

vendor/autoload.php にある、 ComposerAutoloaderInitXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX の XXX... のことね。手抜きでサーバ側に Composer 入れず autoloader だけ入れたいなと思ったんだけど、なにか環境ベースの値だったらいやなので調べた。 get('autol…

PHPではグローバル変数は閉じ込めることができる。そして、関連して引っかかったこと

PHP

前提として、PHPでは変数には2つのスコープしかない。グローバルと、各関数(メソッド)ごとのものだ。ブロックスコープがないのが不便とはいえ、グローバル変数を使わなければ割と平和だ。しかしレガシーコードを扱う場合など、仕方なくグローバル変数を使わ…