PHP5.3がいつのまにかリリースされていたのでクロージャを使ってみた
PHP5.3リリースされてたんですね。
気づきませんでした・・・。
RCが出た時期にちょうど仕事が多忙で試せて無かったので、落ち着いた今、喜び勇んででstableをインストールしました。
で、さっそくクロージャを普通に書いてみました。
<?php $hoge = function () { echo 'hogehoge'; }; $hoge(); ?>
当たり前ですが、正常に動いた!
で、個人的にできるのかすごい気になってた事…
インスタンスに動的にメソッドの追加はできるのか?
<?php class Hoge { } $hoge = new Hoge(); $hoge->method = function () { echo 'method'; }; $hoge->method(); ?>
Fatal error: Call to undefined method Hoge::method() in ...
やっぱり動かないのかー!
これが動いたらフレームワークで__call()を実装しなくてもよくなるので実効速度的に改善できるかなって思ってただけに少し残念です。