Heim >Backend-Entwicklung >PHP-Problem >So konvertieren Sie einen JSON-String in ein Array-Objekt in PHP

So konvertieren Sie einen JSON-String in ein Array-Objekt in PHP

PHPz
PHPzOriginal
2023-04-17 14:15:05655Durchsuche

PHP ist eine sehr beliebte serverseitige Programmiersprache. Sie verfügt über leistungsstarke String-Verarbeitungsfunktionen und unterstützt die Konvertierung von JSON-formatierten Strings in Arrays oder Objekte. In diesem Artikel stellen wir vor, wie man in PHP einen JSON-String in ein Array-Objekt konvertiert.

1. Das Konzept von JSON

JSON steht für JavaScript Object Notation, was übersetzt „JavaScript Object Notation“ bedeutet. Es handelt sich um ein leichtes Datenaustauschformat, das häufig bei der Webübertragung und Datenspeicherung verwendet wird. Daten im JSON-Format können in Form einer Zeichenfolge gespeichert oder direkt in JavaScript als Objekt oder Array dargestellt werden.

2. JSON-Funktionen in PHP

PHP bietet eine Reihe von JSON-Funktionen für die Konvertierung zwischen JSON-Formatzeichenfolgen und Datentypen in PHP. Im Folgenden sind einige häufig verwendete JSON-Funktionen aufgeführt:

  1. json_encode(): Konvertieren Sie Datentypen in PHP in das JSON-Format;
  2. json_decode(): Konvertieren Sie JSON-Formatzeichenfolgen in Datentypen in PHP;
  3. json_last_error( ): Erhalten Sie verursachte Fehler von JSON.

3. JSON-String in Array konvertieren

Das Konvertieren von JSON-String in Array ist relativ einfach, verwenden Sie einfach die Funktion json_decode() in PHP. Der folgende Code konvertiert beispielsweise eine JSON-formatierte Zeichenfolge in ein PHP-Array:

$json_str = '{"name":"Tom","age":20,"sex":"male"}';
$arr = json_decode($json_str, true);
print_r($arr);

Im obigen Code definieren wir zunächst eine JSON-formatierte Zeichenfolge $json_str, die einen Mann namens Tom im Alter von 20 Jahren darstellt. Anschließend verwenden wir die Funktion json_decode(), um diesen String in PHP in ein Array umzuwandeln und ihn der Variablen $arr zuzuweisen. Abschließend verwenden wir die Funktion print_r(), um das Array zu drucken und erhalten das folgende Ergebnis:

Array
(

[name] => Tom
[age] => 20
[sex] => male

)

Wie aus dem Ergebnis ersichtlich ist, wurde der JSON-String erfolgreich in ein PHP-Array konvertiert.

4. JSON-String in Objekt konvertieren

Zusätzlich zur Konvertierung von JSON-String in Array können wir ihn auch in PHP in ein Objekt konvertieren. Um dies zu erreichen, müssen wir den zweiten Parameter weglassen oder ihn beim Aufruf der Funktion json_decode() auf false setzen. Der folgende Code konvertiert beispielsweise eine JSON-formatierte Zeichenfolge in ein PHP-Objekt:

$json_str = '{"name":"Tom","age":20,"sex":"male"}';
$obj = json_decode($json_str);
var_dump($obj);

Im obigen Code definieren wir eine JSON-formatierte Zeichenfolge $json_str und verwenden die Funktion json_decode(), um sie in ein PHP-Objekt zu konvertieren. Schließlich verwenden wir die Funktion var_dump(), um das Objekt anzuzeigen und die folgenden Ergebnisse zu erhalten:

object(stdClass)#1 (3) {
["name"]=>
string(3) "Tom"
[ "age" ]=>
int(20)
["sex"]=>
string(4) "male"
}

Wie aus dem Ergebnis ersichtlich ist, wurde der JSON-String erfolgreich in ein PHP konvertiert Objekt.

5. Arrays oder Objekte in JSON-Strings konvertieren

Zusätzlich zur Konvertierung von JSON-Strings in Arrays oder Objekte in PHP können wir auch Arrays oder Objekte in PHP in Strings im JSON-Format konvertieren. Um dies zu erreichen, müssen wir die Funktion json_encode() in PHP verwenden. Der folgende Code wandelt beispielsweise ein PHP-Array in einen String im JSON-Format um:

$arr = array('name' => 'Tom', 'age' => 20, 'sex' => 'male');
$json_str = json_encode($arr);
echo $json_str;

Im obigen Code definieren wir ein PHP-Array $arr, das einen Mann namens Tom im Alter von 20 Jahren darstellt. Anschließend verwenden wir die Funktion json_encode(), um das Array in einen JSON-formatierten String umzuwandeln und ihn der Variablen $json_str zuzuweisen. Schließlich verwenden wir die Echo-Anweisung, um die Zeichenfolge auszugeben und das folgende Ergebnis zu erhalten:

{"name": "Tom", "age": 20, "sex": "männlich"}

Wie aus dem ersichtlich ist Ergebnisse: Das PHP-Array wurde erfolgreich in eine JSON-formatierte Zeichenfolge konvertiert.

6. Array-Objekte in JSON-Strings konvertieren

In einigen Fällen müssen wir Array-Objekte in PHP in JSON-Format-Strings konvertieren. Um dies zu erreichen, können wir zunächst das Array-Objekt in ein Objekt konvertieren und es dann mithilfe der Funktion json_encode() in einen JSON-formatierten String konvertieren. Der folgende Code konvertiert beispielsweise ein Array-Objekt in einen String im JSON-Format:

$arr = array(
    array('name' => 'Tom', 'age' => 20, 'sex' => 'male'),
    array('name' => 'Lucy', 'age' => 18, 'sex' => 'female')
);
$obj = (object)$arr;
$json_str = json_encode($obj);
echo $json_str;

Im obigen Code definieren wir ein PHP-Array $arr, das zwei Array-Objekte enthält. Dann verwenden wir (object)$arr, um es in ein PHP-Objekt $obj zu konvertieren, verwenden dann die Funktion json_encode(), um das Objekt in eine JSON-formatierte Zeichenfolge zu konvertieren und weisen es der Variablen $json_str zu. Abschließend verwenden wir die Echo-Anweisung, um die Zeichenfolge auszugeben und die folgenden Ergebnisse zu erhalten:

[{"name": "Tom", "age": 20, "sex": "männlich"}, {"name": Lucy" ,"age":18,"sex":"female"}]

Wie aus den Ergebnissen ersichtlich ist, wurde das PHP-Array-Objekt erfolgreich in eine JSON-Formatzeichenfolge konvertiert.

Zusammenfassend lässt sich sagen, dass wir anhand der obigen Beispiele klar verstehen können, wie man in PHP einen JSON-String in ein Array oder Objekt und ein Array oder Objekt in einen JSON-String konvertiert. Diese Vorgänge kommen in unserem PHP-Programmierungsprozess sehr häufig vor und ihre Beherrschung wird unsere Programmiereffizienz erheblich verbessern.

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie einen JSON-String in ein Array-Objekt in PHP. 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