CakePHP 2.2のHash::extract()はCentOS5/RHEL5系では使えない

標準

先日CakePHPのバグレポートをしたのでご報告。

#3821 Hash::extract() not working on CentOS 5 – CakePHP – cakephp

※この話はCakePHP2.2 – 2.3.4までが該当します。次バージョン(2.3.5)以降は修正が適用されるため大丈夫です。

CakePHP 2.2から追加されたHashクラスのextractメソッドは、RHEL5/CentOS5系の標準パッケージでインストールされたPHPでは利用できません。

理由は、PCREライブラリのバージョンが6.6と古いためです。

これを修正するには、lib/Cake/Utility/Hash.phpの173行目を変更します。パッチは以下を参照してください。

Make named capture groups compatible with older PCRE versions. · b533c1b · cakephp/cakephp

# CentOSはクソという話になっています 😉
# 古いpcreは色々問題があったりするので、PCRE自体をバージョンアップするかphpにバンドルされているものを使用するのがいいでしょうね。
# remiレポジトリのphpパッケージはPCREが新しいものになってました。

コメントを残す

Page optimized by WP Minify WordPress Plugin