関数emptyの引数
2009/01/16 | PHPの基本
値が空かどうかをチェックするのにempty関数をよく使っている。でも、あるとき、以下のようなエラーが出た。
Fatal error: Can’t use method return value in write context in /path/to/script
ぱっと見ただけでは意味がわからない・・・しばらく考える・・・「メソッドの戻り値は使えない」・・・。
プログラムの中では以下のように記述していた。
empty($hoge->fuga())
しかし、以下のように記述するとエラーにならない。
$value=$hoge->fuga();
empty($value);
あ、ひょっとして・・・。
マニュアルを見たら書いてあった。「emptyの引数は関数であってはならない」そうだ。これは知らなかった。というよりも、よく今までこういう記述をしていなかったものだと思った。