JSON ist ein leichtes Textdatenaustauschformat. Es ist kleiner, schneller und einfacher zu analysieren. Daher wird es während des PHP-Entwicklungsprozesses häufig zum Übertragen von Daten verwendet Wie PHP JSON-Daten verarbeitet
PHP verarbeitet JSON-Daten im Allgemeinen in AJAX. Sie können Daten im JSON-Format an AJAX übergeben oder die von AJAX zurückgegebenen JSON-Daten analysieren String, den wir brauchen. In PHP können Sie die Funktion json_decode() verwenden, um Daten im JSON-Format zu analysieren, und die Funktion json_encode() verwenden, um eine Zeichenfolge (Array) im JSON-Format zu generieren.
Schauen Sie sich zuerst das Beispiel an:
Beispiel 1:
PHP-Code
<?php $json = '{"a":1, "b":2, "c":3, "d":4, "e":5 }'; var_dump(json_decode($json)); echo "<br/>"; var_dump(json_decode($json,true)); ?>
Ausgabe:
object(stdClass)#1 (5) { ["a"]=> int(1) ["b"]=> int(2) ["c"]=> d" ]=> int(4) ["e"]=> int(5) }
array(5) { ["a"]=> int(1) ["b" ]= > int(2) ["c"]=> int(3) ["d"]=> >Beispiel 2:
PHP-Code
<?php $arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5); echo json_encode($arr); ?>
Ausgabe:
{"a":1,"b ": 2,"c":3,"d":4,"e":5}
Aus Beispiel 1 können wir sehen, dass die Funktion json_decode zum Konvertieren von JSON verwendet werden kann Wenn jedoch in den JSON-Daten verschachtelte JSON-Daten vorhanden sind, können Sie diese nicht direkt auf diese Weise schreiben. Sie müssen eine benutzerdefinierte Funktion verwenden, um die verschachtelten JSON-Daten in ein Array zu konvertieren.
Beispiel:
PHP-Code
Aufrufbeispiel:<?php function json_to_array($web){ $arr=array(); foreach($web as $k=>$w){ if(is_object($w)) $arr[$k]=json_to_array($w); //判断类型是不是object else $arr[$k]=$w; } return $arr; } ?>
PHP-Code
<?php $s='{"webname":"UncleToo","url":"www.uncletoo.com","menu":{"PHP":"1","DataBase":"2","Web":"3"}}'; $web=json_decode($s); $arr=json_to_array($web); print_r($arr); ?>
Ausgabe:
Array ( [webname] => UncleToo [url] => www.uncletoo.com [menu] => Array ( [PHP] => 1 [DataBase] => 2 [Web] => 3 ) )
Die oben genannten Methoden zum Bearbeiten von JSON-Daten können Sie mit UncleToo besprechen.