月別アーカイブ: 2014年5月

PHPのjson_encode関数の仕様

こんばんは、ご無沙汰してます、しょうたんです。
今日はjsonパースでよく使用するであろうPHPのjson_encode関数について話したいと思います。
というのも、この関数PHPのバージョンで重要な仕様が追加されているのです。

json_encode関数の変更履歴は以下の通りです。

5.5.0 パラメータ depth が追加されました。
5.4.0 option に JSON_PRETTY_PRINT、JSON_UNESCAPED_SLASHES および JSON_UNESCAPED_UNICODE が追加されました。
5.3.3 option に JSON_NUMERIC_CHECK が追加されました。

重要なのはdepth とJSON_UNESCAPED_UNICODE です。
depth は階層の深さ、JSON_UNESCAPED_UNICODE はUnicodeエスケープするか否かです。
古いPHP環境では当たり前のようにこれらが動かないので、PHP環境を再構築できない場合は別途代替案を用意しなければならなくなります。
と言っても運用中のサーバでPHP再構築はそうそうすんなりとはできないと思われるので、
古いPHP環境で運用しなければならない事情があれば、独自に関数を準備しても良いでしょう。

今回は以上です、お疲れ様でした。