PHP5.4.0がリリースされました
PHP5.4.0がリリースされましたね。
PHP 5.4.0 Release Announcement
既存のコードへの影響は少ないようです。
Backward Incompatible Changes
- セーフモードがなくなった
- マジッククォートが削除された
- 呼び出し時の参照渡しをサポートしなくなった
- $a が文字列の場合に非数値のオフセット (たとえば $a['foo']) を指定したときに、isset, notEmptyの返り値が変わる
セーフモードとマジッククォートは色々言われていましたが、ついになくなりました。
参照渡しもサポート外になりました。PHPでは参照渡しするなってことですかね。
こんな記事もあります。
高速化Tipsのオカルト(1) 関数への参照渡し
New features
個人的にはこの辺が使えそうです。
- トレイトのサポートが追加
- 配列の短縮構文が追加。$a = [1, 2, 3, 4]; や $a = ['one' => 1, 'two' => 2, 'three' => 3, 'four' => 4]; のように使える。
- クラスのインスタンスを生成するときに、そのメンバーにアクセスできるようになった (例: (new Foo)->bar())。
CakePHPのClassRegister::init('Foo')->bar()のようなものでしょうか。
これが使えると便利です。
arrayの短縮構文もサポートされて、今後はarray()と書くことも少なくなっていきそうですね。
新しい構文については、以下のスライドが参考になります。
CakePHPも動作するようですね。
PHP5.4 ビルトインサーバで CakePHP を試食する
PHP5.4使いたくなってきました。。。