In PHP ist das Konvertieren einer JSON-formatierten Zeichenfolge in ein Array ein sehr einfacher Vorgang. Zu diesem Zweck können zwei in PHP integrierte Funktionen verwendet werden: json_decode() und json_decode_object().
1. Verwenden Sie die Funktion json_decode().
Die Funktion json_decode() ist eine gängige Methode zum Konvertieren von Zeichenfolgen im JSON-Format in PHP-Arrays.
Syntax:
<code>mixed json_decode ( string $json [, bool $assoc = FALSE [, int $depth = 512 [, int $options = 0 ]]] )</code>
Unter ihnen:
Konvertieren Sie eine JSON-formatierte Zeichenfolge in ein Array:
<code><?php $json_string = '{"name": "Tom", "age": 30, "sex": "male"}'; $decoded_json = json_decode($json_string); print_r($decoded_json); ?></code>
Ausgabe:
<code>stdClass Object ( [name] => Tom [age] => 30 [sex] => male )</code>
Im obigen Code definieren wir zunächst eine JSON-formatierte Zeichenfolge und rufen dann die Funktion json_decode() auf, um das Zeichen Convert zu dekodieren Fügen Sie den String in ein PHP-Array $decoded_json ein und geben Sie das Ergebnis aus.
Wenn Sie das Rückgabeergebnis in ein assoziatives Array konvertieren möchten, müssen Sie den Parameter $assoc auf TRUE setzen:
<code><?php $json_string = '{"name": "Tom", "age": 30, "sex": "male"}'; $decoded_json = json_decode($json_string, true); print_r($decoded_json); ?></code>
Ausgabe:
<code>Array ( [name] => Tom [age] => 30 [sex] => male )</code>
Wie Sie der obigen Ausgabe entnehmen können, unterscheidet sich das Array $decoded_json von das letzte Ausgabeobjekt, nämlich Denn zu diesem Zeitpunkt wird $assoc auf TRUE gesetzt und in ein assoziatives Array konvertiert. Wenn $assoc nicht festgelegt ist, wird standardmäßig ein Objekt anstelle eines Arrays zurückgegeben.
2. Verwenden Sie die Funktion json_decode_object()
Zusätzlich zur Funktion json_decode() bietet PHP auch eine weitere Möglichkeit, JSON-Formatzeichenfolgen in PHP-Arrays zu konvertieren, nämlich die Funktion json_decode_object().
Syntax:
<code>object json_decode_object ( string $json_string [, bool $assoc = false [, int $depth = 512 [, int $options = 0 ]]] )</code>
Unter ihnen:
$json_string: der JSON-String, der analysiert werden muss;<code><?php $json_string = '{"name": "Tom", "age": 30, "sex": "male"}'; $decoded_json = json_decode_object($json_string); print_r($decoded_json); ?></code>
Ausgabe:
<code>stdClass Object ( [name] => Tom [age] => 30 [sex] => male )</code>
Im obigen Code verwenden wir die Funktion json_decode_object(), um die JSON-Zeichenfolge in das PHP-Array $decoded_json zu konvertieren. Da wir den Parameter $assoc nicht festgelegt haben, wird standardmäßig ein Objekt anstelle eines Arrays zurückgegeben.
Zusammenfassung
In PHP können wir die Funktionen json_decode() und json_decode_object() verwenden, um Zeichenfolgen im JSON-Format in PHP-Arrays zu konvertieren. Beide Funktionen haben ihre Vorteile, und für welche Sie sich entscheiden, hängt von Ihren spezifischen Bedürfnissen ab. Wenn das Ergebnis ein Objekt sein soll, verwenden Sie json_decode_object(). Wenn das Ergebnis ein Array sein soll, verwenden Sie json_decode(). Während der Verwendung müssen Sie auch die Werte der Parameter $ Depth und $ Options entsprechend der tatsächlichen Situation anpassen, um einen Speicherüberlauf zu vermeiden.
Das obige ist der detaillierte Inhalt vonKonvertieren Sie einen JSON-String in ein PHP-Array. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!