http://php.net/manual/en/functions.anonymous.phpによると、関数が存在するコンテキストで定義されていても、PHP 5.3$this
は暗黙的な関数内からアクセスできません$this
。この制限を回避する方法はありますか? (ちなみに、ウェブサーバー上の PHP インストールをアップグレードすることはできません)
暗黙的な関数を使用したい方法は、オブジェクトのメンバー関数であるコールバックを定義することです。より正確には、次のようなことをしたいと思います
$callback = function() { return $this->my_callback(); }
実際、イベントのより良い構文は次のようになります
$callback = $this->my_callback
しかし、私はそれを機能させることはできません (コールバックを実行しようとすると、PHP は「致命的なエラー: 関数名は文字列でなければなりません」で終了します)。