勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ

PHPバージョンが古くjson_decodeが使えない際の対応方法(Services_JSON)

   2024/01/13  PHP

PHPのバージョンが古くてjson_decodeが使えないという状況があった。また、サーバの変更やPHPのバージョンアップは行えないという状況。何とかならないか調べたところPEARのServices_JSONというものを使えば解決できた。以下に対応方法のメモ。

 

Services_JSON

http://pear.php.net/package/Services_JSON/download

ダウンロードして解凍し、JSON.phpを適当なディレクトリにアップロードしておく。

 

ソース

if (!function_exists('json_encode')) {
    require_once 'JSON.php';
    function json_encode($value) {
        $s = new Services_JSON();
        return $s->encodeUnsafe($value);
    }

    function json_decode($json, $assoc = false) {
        $s = new Services_JSON($assoc ? SERVICES_JSON_LOOSE_TYPE : 0);
        return $s->decode($json);
    }
}

 

参考サイト

https://www.softel.co.jp/blogs/tech/archives/3663

 - PHP

  関連記事

PHPでパスワード付きのZIP / PDFファイルを作成する方法
PHPでパスワード付きのZIP / PDFファイルを作成する方法

PHPでZIPファイル化する方法やPDFファイル出力する方法を過去に書いたが、何 ...

CodeIgniter4でCronを実行する方法
CodeIgniter4でCronを実行する方法

CodeIgniter4.4.4で特定の処理をCronで自動実行させたい。以下に ...

PHPでキーや値は保持したまま順番を入れ替える
PHPでキーや値は保持したまま順番を入れ替える

PHPで連想配列のキーや値は保持したまま順番をランダムに入れ替えたかった。一発で ...

PHPでルーティング用ライブラリ「AltoRouter」の利用方法
PHPでルーティング用ライブラリ「AltoRouter」の利用方法

PHPフレームワークのCodeIgniterを勉強していた際にルーティング機能が ...

PHPからLINEのMessaging APIにリクエストし通知を送る方法
PHPからLINEのMessaging APIにリクエストし通知を送る方法

LINEから「2025/3/31にLINE Notifyのサービスが終了する」と ...