Heim  >  Artikel  >  Backend-Entwicklung  >  Was sind die gängigen Methoden von PHP JSON?

Was sind die gängigen Methoden von PHP JSON?

青灯夜游
青灯夜游Original
2021-09-18 16:56:422167Durchsuche

php json allgemeine Methoden: 1. json_encode(), wird verwendet, um Zeichenfolgen im JSON-Format zu dekodieren; 2. json_encode(), wird verwendet, um Zeichenfolgen im JSON-Format zu dekodieren; 3. json_last_error(), wird verwendet, um den zuletzt aufgetretenen Fehler zurückzugeben.

Was sind die gängigen Methoden von PHP JSON?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

php json allgemeine Methoden:

1, json_encode()

PHP json_encode() Wird JSON verwendet, wird die Variable codiert. Wenn die Funktion erfolgreich ausgeführt wird, werden JSON-Daten zurückgegeben, andernfalls wird FALSE zurückgegeben.

Syntax

string json_encode ( $value [, $options = 0 ] )

Beispiel:

<?php
   $arr = array(&#39;a&#39; => 1, &#39;b&#39; => 2, &#39;c&#39; => 3, &#39;d&#39; => 4, &#39;e&#39; => 5);
   echo json_encode($arr);
?>

Ausgabeergebnis:

{"a":1,"b":2,"c":3,"d":4,"e":5}

2, json_encode()

json_decode()-Funktion wird verwendet, um JSON-Formatzeichenfolgen zu dekodieren und in PHP-Variablen zu konvertieren.

Syntax:

mixed json_decode ($json_string [,$assoc = false [, $depth = 512 [, $options = 0 ]]])

Parameter:

  • json_string: Zu dekodierender JSON-String, muss UTF-8-kodierte Daten sein

  • assoc: Wenn dieser Parameter TRUE ist, wird ein Array zurückgegeben, und wenn FALSE, Es wird ein Objekt zurückgegeben.

  • Tiefe: Parameter vom Typ Integer, der die Rekursionstiefe angibt.

  • Optionen: Binärmaske, derzeit wird nur JSON_BIGINT_AS_STRING unterstützt.

Beispiel:

Ausgabeergebnis:

object(stdClass)#1 (5) {
    ["a"] => int(1)
    ["b"] => int(2)
    ["c"] => int(3)
    ["d"] => int(4)
    ["e"] => int(5)
}

array(5) {
    ["a"] => int(1)
    ["b"] => int(2)
    ["c"] => int(3)
    ["d"] => int(4)
    ["e"] => int(5)
}

3, json_last_error()

json_last_error – Gibt den zuletzt aufgetretenen Fehler zurück

Syntax:

json_last_error()

If any, gibt den letzten Fehler zurück, der während aufgetreten ist JSON-Codierungs- und Decodierungsfehler. Es wird eine Ganzzahl zurückgegeben und dieser Wert ist eine der folgenden Konstanten:

Es ist kein Fehler aufgetreten JSON_ERROR_STATE_MISMATCH
JSON-Fehler
Konstante Bedeutung Verfügbarkeit
JSON_ERROR_N EIN<code>JSON_ERROR_NONE 没有错误发生  
JSON_ERROR_DEPTH 到达了最大堆栈深度  
JSON_ERROR_STATE_MISMATCH 无效或异常的 JSON  
JSON_ERROR_CTRL_CHAR 控制字符错误,可能是编码不对  
JSON_ERROR_SYNTAX 语法错误  
JSON_ERROR_UTF8 异常的 UTF-8 字符,也许是因为不正确的编码。 PHP 5.3.3
JSON_ERROR_RECURSION One or more recursive references in the value to be encoded PHP 5.5.0
JSON_ERROR_INF_OR_NAN One or more       NAN       or INF       values in the value to be encoded PHP 5.5.0
JSON_ERROR_UNSUPPORTED_TYPE 指定的类型,值无法编码。 PHP 5.5.0
JSON_ERROR_INVALID_PROPERTY_NAME 指定的属性名无法编码。 PHP 7.0.0
JSON_ERROR_UTF16 Ungültiges oder ungewöhnliches JSON

JSON_ERROR_CTRL_CHAR


Steuerzeichenfehler, möglicherweise falsche Codierung

🎜🎜JSON_ERROR_SYNTAX🎜🎜🎜Syntaxfehler🎜 🎜🎜🎜🎜🎜JSON_ERROR_UTF8🎜🎜🎜Ausnahme al UTF-8-Zeichen, möglicherweise aufgrund einer falschen Codierung. 🎜🎜PHP 5.3.3🎜🎜🎜🎜🎜<code>JSON_ERROR_RECURSION🎜🎜🎜 Eine oder mehrere rekursive Referenzen im zu kodierenden Wert🎜🎜PHP. 5.5.0🎜🎜🎜🎜🎜 OR_INF_OR_NAN code>🎜🎜🎜Ein oder mehrere 🎜<code>NAN🎜 oder 🎜INF🎜 Werte im zu kodierenden Wert🎜🎜PHP 5.5.0🎜🎜🎜🎜🎜JSON_ERROR_UNSUPPORTED_TYPE🎜🎜🎜Der angegebene Typ, der Wert kann nicht kodiert werden. 🎜🎜PHP 5.5.0🎜🎜🎜🎜🎜JSON_ERROR_INVALID_PROPERTY_NAME🎜🎜🎜Der angegebene Eigenschaftsname kann nicht codiert werden. 🎜🎜PHP 7.0.0🎜🎜🎜🎜🎜JSON_ERROR_UTF16🎜🎜🎜Fehlerhafte UTF-16-Zeichen, möglicherweise weil die Zeichenkodierung falsch ist. 🎜🎜PHP 7.0.0🎜🎜🎜🎜🎜Beispiel: 🎜
<?php
// 一个有效的 json 字符串
$json[] = &#39;{"Organization": "PHP Documentation Team"}&#39;;

// 一个无效的 json 字符串会导致一个语法错误,在这个例子里我们使用 &#39; 代替了 " 作为引号
$json[] = "{&#39;Organization&#39;: &#39;PHP Documentation Team&#39;}";


foreach ($json as $string) {
    echo &#39;Decoding: &#39; . $string;
    json_decode($string);

    switch (json_last_error()) {
        case JSON_ERROR_NONE:
            echo &#39; - No errors&#39;;
        break;
        case JSON_ERROR_DEPTH:
            echo &#39; - Maximum stack depth exceeded&#39;;
        break;
        case JSON_ERROR_STATE_MISMATCH:
            echo &#39; - Underflow or the modes mismatch&#39;;
        break;
        case JSON_ERROR_CTRL_CHAR:
            echo &#39; - Unexpected control character found&#39;;
        break;
        case JSON_ERROR_SYNTAX:
            echo &#39; - Syntax error, malformed JSON&#39;;
        break;
        case JSON_ERROR_UTF8:
            echo &#39; - Malformed UTF-8 characters, possibly incorrectly encoded&#39;;
        break;
        default:
            echo &#39; - Unknown error&#39;;
        break;
    }

    echo PHP_EOL;
}
?>
🎜Ausgabeergebnis: 🎜🎜
Decoding: {"Organization": "PHP Documentation Team"} - No errors
Decoding: {&#39;Organization&#39;: &#39;PHP Documentation Team&#39;} - Syntax error, malformed JSON
🎜Empfohlenes Lernen: „🎜PHP-Video-Tutorial🎜“🎜

Das obige ist der detaillierte Inhalt vonWas sind die gängigen Methoden von PHP JSON?. 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