私は__isset()
すでに長い間カスタム関数を使用してきました。これは基本的に、コードの見栄えを良くし、入力時間を節約するためにのみ存在します。
function __isset(&$aVariable, $aDefault = null) {
return isset($aVariable) ? $aVariable : $aDefault;
}
しかし、今日、この関数が存在しない場合、実際に変数を作成していることがわかりました! これは、配列のプロパティをチェックしているときに大きな問題になります。
$lArray = ('A', 'B', 'C');
$lValue = __isset($lArray[4], 'D');
print_r($lArray); // Outputs 0=>'A', 1=>'B', 2=>'C', 3=>NULL
isset()
だから私が望むのは、PHPから現在の関数を複製し、それを変更して私が望むことをすることです。isset()
問題は、PHP ソース コードで実際の関数が見つからないことです...
多くのフレームワークがisset()
最初の例で示したような関数を使用しており、この問題に遭遇したのは私が最初だとは思えません。
だから私の質問は:
isset()
実際のPHP 関数はどこにありますか?- 実際の
isset()
C 関数 (実際の実装) はどこにありますか? - 値または指定されたデフォルト値を返すようにコードを変更する方法は?