Heim  >  Artikel  >  Backend-Entwicklung  >  Warum gibt PHP den Fehler „Aufruf der undefinierten Funktion json_decode()“ aus, selbst bei einer Version größer als 5.1?

Warum gibt PHP den Fehler „Aufruf der undefinierten Funktion json_decode()“ aus, selbst bei einer Version größer als 5.1?

DDD
DDDOriginal
2024-11-01 07:11:30404Durchsuche

Why does PHP throw a

"Aufruf der undefinierten Funktion json_decode()"

Schwerwiegender PHP-Fehler: JSON konnte nicht dekodiert werden

Der PHP-Fehler „Call to undefined function json_decode()“ weist darauf hin, dass die JSON-Parsing-Funktion von PHP nicht erkannt wird. Obwohl die gemeldete PHP-Version höher als 5.1 ist, was JSON-Unterstützung beinhaltet, kann dieser Fehler immer noch auftreten.

Debians Entfernung der JSON-Erweiterung

In Debian-basierten Systemen, einschließlich Ubuntu, wurde die Standard-JSON-Erweiterung aufgrund eines Lizenzkonflikts aus PHP 5.5rc2 entfernt. Debian erfordert, dass alle verpackte Software den Debian Free Software Guidelines (DFSG) entspricht.

JSON-Lizenzierungsprobleme

Die Die ursprüngliche JSON-Lizenz enthält eine Klausel, die ihre Verwendung auf „Gut, nicht Böse“ einschränkt. Dies steht im Widerspruch zur Definition freier Software der DFSG, die die Freiheit erfordert, das Programm für jeden Zweck auszuführen. Daher betrachtet Debian die JSON-Lizenz als unfrei.

Ersatz-PHP-Erweiterung

Debian hat das Standard-JSON ersetzt Erweiterung durch einen funktionell gleichwertigen Ersatz, der dem DFSG entspricht. Um den Fehler „json_decode()“ zu beheben, müssen Debian-Benutzer die entsprechende Ersatzerweiterung für ihre PHP-Version installieren:


  • sudo apt-get installiere 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 Restart


  • sudo service apache2 restart (Apache)

  • sudo service php7.2-fpm restart (PHP-FPM 7.2)

Zusätzlich Informationen

Das obige ist der detaillierte Inhalt vonWarum gibt PHP den Fehler „Aufruf der undefinierten Funktion json_decode()“ aus, selbst bei einer Version größer als 5.1?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn