この質問は情報提供のみを目的としています。
変数が is_set かどうかを確認し、そうであれば null に設定されているかどうかを確認する方法があるかどうか疑問に思っていました
PHP の型比較表に基づくと、それは可能ではないようです。
たとえば、次のコードがあるとします。
<?php
$x = null;
if(isset($x) && is_null($x)){
echo '$x is set to NULL';
}else{
echo '$x was never initialized';
}
echo "\n";
if(isset($y) && is_null($y)){
echo '$y is set to NULL';
}else{
echo '$y was never initialized';
}
echo "\n";
if(is_null($z)){
echo '$z is set to NULL';
}else{
echo '$z was never initialized';
}
?>
ページが表示されることを期待します:
$x is set to NULL
$y was never initialized
$z is set to NULL <it should give an E_NOTICE>
しかし、私は得ています
$x was never initialized
$y was never initialized
$z is set to NULL