勉強したことのメモ

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でプロキシ経由で他サーバーに接続する方法(file_get_contents / curlの2パターン)
PHPでプロキシ経由で他サーバーに接続する方法(file_get_contents / curlの2パターン)

PHPでfile_get_contentsやcurlで他サーバに接続する際に自サ ...

PHPからDBX Platformを利用してDropbox内のファイル一覧を取得する方法
PHPからDBX Platformを利用してDropbox内のファイル一覧を取得する方法

以前にPHPからDropboxにファイルをアップロードするという記事を書いたが、 ...

PHPとStripeで定額課金(サブスクリプション)実装する方法
PHPとStripeで定額課金(サブスクリプション)実装する方法

PHPとStripeで1ヶ月ごとに500円でサイト内のサービスを使い放題、といっ ...

Podmanで導入したPHPの設定ファイル(php.ini)変更と高速化に関する設定方法
Podmanで導入したPHPの設定ファイル(php.ini)変更と高速化に関する設定方法

Podmanで導入したPHPの設定ファイル(php.ini)の内容を変更したい。 ...

PHPにて「hashids(Sqids)」ライブラリで数値からユニークなランダム英数字のIDに変換する方法
PHPにて「hashids(Sqids)」ライブラリで数値からユニークなランダム英数字のIDに変換する方法

PHPにてユーザID等を推測されないよう数値のIDからユニークなランダム英数字の ...