概要
またまた勘違いしていましたので記述します。
結果
falseです。
理屈(憶測)
// 定義したが中身は存在しない。
$arg = null;
$result = isset($arg); // false
// 定義(set)しているのでtrueが返ると思っていました・・・。
// ちなみにJavaScriptではそれで合っているようです・・・。
$result= empty($arg2); // true
// undifined(未定義)なのでエラーになると思っていました・・・。
ジレンマ・・・。
多言語をする身としては、PHPもやっと厳格になってきたのかと思っていましたが、この辺は違うようです。
私は癖で、なるべく変数は宣言して初期値を与えるのですが、他人が作った古いソース(特にPHP4, 5)を移植すると頭が痛くなります。
このことからissetとemptyは特に自覚を持って使用することが望まれますね。
