memocon プログラミングのメモや物欲日記、雑記等

PHP: バージョンアップできなくて使えない関数がある時の対応

2012年04月20日 16時03分

PHPがバージョンアップされて関数が増えたがサービスを停止するわけにもいかずPHPのバージョンアップができず使用できない。
こんな状況はないだろうか。
俺の場合は具体的にjson_decodeが使いたい。

でないとFacebookのSDKがFacebook needs the JSON PHP extensionってエラーが出て使用できない。

なんとかしたいなぁと思っていたらupgradephpというライブラリを発見した。

upgradephp
http://include-once.org/p/upgradephp/

バージョンアップされて追加された関数が定義されていない場合、追加されるという代物。

これインクルードしてからFacebookのSDKをインクルードしたらjson_decodeが定義されて問題なく処理できた。

こんなんあったんかぁ、素晴らしい。

ついでにFacebookが返すマルチバイト文字形式の\uxxxx形式が文字化けするので以下の関数をjson_decodeする前に通す。