クイック仕様:
PHP 5.3
error_reporting(-1) // the highest
__get()
オブジェクト内の任意の深さの配列要素に魔法のようにアクセスするために、参照によるトリックを使用しています。
簡単な例:
public function &__get($key){
return isset($this->_data[$key])
? $this->_data[$key]
: null;
}
が設定されていない場合、これは機能しません。参照によって$key
返そうとnull
しますが、もちろんスローOnly variable references should be returned by reference ...
されます。次のように変更してみました。
public function &__get($key){
$null = null;
return isset($this->_data[$key])
? $this->_data[$key]
: $null;
}
それでも機能しませんが、その設定$null
はnull
本質的にそれであると想定してunset()
います。
私に何ができる?ありがとう!
多少関連性があるので、この質問を宣伝したいと思いました(PHPの魔法と参照)。__callStatic()、call_user_func_array()、参照、および PHP 5.3.1。私はまだ答えを見つけていません... PHPコアを変更する以外に。