ホームページ  >  記事  >  バックエンド開発  >  5.1 以降のバージョンであっても、PHP が「未定義関数 json_decode() への呼び出し」エラーをスローするのはなぜですか?

5.1 以降のバージョンであっても、PHP が「未定義関数 json_decode() への呼び出し」エラーをスローするのはなぜですか?

DDD
DDDオリジナル
2024-11-01 07:11:30403ブラウズ

Why does PHP throw a

"未定義関数 json_decode() の呼び出し"

PHP 致命的エラー: JSON をデコードできません

PHP エラー「未定義関数 json_decode() への呼び出し」は、JSON 解析関数が PHP によって認識されていないことを示します。報告された PHP バージョンは JSON サポートを含む 5.1 以降であるにもかかわらず、このエラーは依然として発生する可能性があります。

Debian による JSON 拡張機能の削除

Ubuntu を含む Debian ベースのシステムでは、ライセンスの競合により、標準の JSON 拡張機能が PHP 5.5rc2 から削除されました。 Debian では、すべてのパッケージ ソフトウェアが Debian フリー ソフトウェア ガイドライン (DFSG) に準拠する必要があります。

JSON ライセンスの問題

元の JSON ライセンスには、その使用を「悪ではなく善」に制限する条項が含まれています。これは、いかなる目的でもプログラムを実行する自由を要求する DFSG のフリー ソフトウェアの定義と矛盾します。そのため、Debian は JSON ライセンスが不自由なものであるとみなします。

代替 PHP 拡張機能

Debian は標準の JSON を置き換えました。 DFSG に準拠した機能的に同等の置き換えによる拡張機能。 「json_decode()」エラーを解決するには、Debian ユーザーは自分の PHP バージョンに適切な代替拡張機能をインストールする必要があります:


  • sudo apt-get php7.2-json (PHP 7.2) をインストール

  • sudo apt-get install php7.1-json (PHP 7.1)

  • sudo apt -get install php5-json (PHP 5.x)

Apache 再起動


  • sudo service apache2 restart (Apache)

  • sudo サービス php7.2-fpm 再起動 (PHP-FPM 7.2)

追加情報

以上が5.1 以降のバージョンであっても、PHP が「未定義関数 json_decode() への呼び出し」エラーをスローするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。