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

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

PHPz
Freigeben: 2023-04-26 09:29:59
Original
545 Leute haben es durchsucht

In PHP verwenden wir häufig JSON (JavaScript Object Notation), um Daten zu übergeben. JSON ist ein leichtes Datenformat, das leicht zu lesen, zu schreiben und zu analysieren ist und sich für den Datenaustausch zwischen verschiedenen Sprachen eignet. Manchmal stoßen wir auf Situationen, in denen wir ein JSON-Objekt in ein Array konvertieren müssen. In diesem Artikel wird erläutert, wie diese Funktion in PHP implementiert wird.

Werfen wir zunächst einen Blick auf die Struktur von JSON. Jedes Schlüssel-Wert-Paar besteht aus einem Feldnamen und einem Wert. Wertepaare werden durch Kommas getrennt und in geschweifte Klammern eingeschlossen. Zum Beispiel:

{
    "name": "Alice",
    "age": 30,
    "height": 1.65
}
Nach dem Login kopieren

In PHP können wir die Funktion json_decode verwenden, um einen JSON-String in eine PHP-Variable umzuwandeln. Der erste Parameter dieser Funktion ist die zu dekodierende JSON-Zeichenfolge und der zweite Parameter ist ein boolescher Wert, der angibt, ob der zurückgegebene Wert ein assoziatives Array oder ein normales Array ist. Wenn der zweite Parameter true ist, ist der zurückgegebene Wert ein assoziatives Array; wenn er false ist oder weggelassen wird, ist der zurückgegebene Wert ein Objekt. json_decode 函数将 JSON 字符串转换成 PHP 变量。这个函数的第一个参数是要解码的 JSON 字符串,第二个参数是一个布尔值,表示返回的值是一个关联数组还是一个普通数组。如果第二个参数为 true,则返回的值是一个关联数组;如果为 false或省略,则返回的是一个对象。

因此,我们可以使用 json_decode 函数将 JSON 字符串转换成 PHP 对象,然后使用强制类型转换将其转换成数组。例如:

$json = '{"name": "Alice", "age": 30, "height": 1.65}';
$obj = json_decode($json);  // 将 JSON 对象转换成 PHP 对象
$arr = (array) $obj;        // 将 PHP 对象转换成数组
print_r($arr);
Nach dem Login kopieren

运行结果为:

Array
(
    [name] => Alice
    [age] => 30
    [height] => 1.65
)
Nach dem Login kopieren
Nach dem Login kopieren

以上代码将 JSON 对象转换成了一个包含三个元素的数组,每个元素的键名对应 JSON 对象中的字段名,键值对应字段的值。

当然,如果我们直接使用 json_decode 函数的第二个参数将其转换成关联数组,将会更加简单。例如:

$json = '{"name": "Alice", "age": 30, "height": 1.65}';
$arr = json_decode($json, true);  // 将 JSON 对象转换成关联数组
print_r($arr);
Nach dem Login kopieren

运行结果为:

Array
(
    [name] => Alice
    [age] => 30
    [height] => 1.65
)
Nach dem Login kopieren
Nach dem Login kopieren

以上代码同样将 JSON 对象转换成了一个包含三个元素的数组,每个元素的键名对应 JSON 对象中的字段名,键值对应字段的值。唯一的区别在于,这个数组是一个关联数组,其每个元素的键名与 JSON 对象中的字段名完全一致。

总结一下,将 JSON 对象转换成数组的方法有两种:

  • 首先使用 json_decode 函数将 JSON 对象转换成 PHP 对象,然后使用强制类型转换将其转换成数组。
  • 直接使用 json_decode
  • Wir können also die Funktion json_decode verwenden, um den JSON-String in ein PHP-Objekt umzuwandeln, und ihn dann mithilfe von cast in ein Array umwandeln. Beispiel:
rrreee

Das laufende Ergebnis lautet:

rrreee🎜Der obige Code konvertiert das JSON-Objekt in ein Array mit drei Elementen. Der Schlüsselname jedes Elements entspricht dem Feldnamen im JSON-Objekt und der Schlüsselwert entspricht der Wert des Feldes. 🎜🎜Natürlich wird es einfacher, wenn wir den zweiten Parameter der Funktion json_decode direkt verwenden, um ihn in ein assoziatives Array umzuwandeln. Beispiel: 🎜rrreee🎜Das laufende Ergebnis lautet: 🎜rrreee🎜Der obige Code konvertiert außerdem das JSON-Objekt in ein Array mit drei Elementen. Der Schlüsselname jedes Elements entspricht dem Feldnamen im JSON-Objekt und der Schlüsselwert entspricht zum Wert des Feldes. Der einzige Unterschied besteht darin, dass es sich bei diesem Array um ein assoziatives Array handelt und der Schlüsselname jedes Elements genau mit dem Feldnamen im JSON-Objekt übereinstimmt. 🎜🎜Zusammenfassend gibt es zwei Möglichkeiten, ein JSON-Objekt in ein Array zu konvertieren: 🎜
  • Verwenden Sie zuerst die Funktion json_decode, um das JSON-Objekt in ein PHP-Objekt zu konvertieren, und verwenden Sie es dann cast, um es zu konvertieren. In Array konvertieren. 🎜
  • Verwenden Sie direkt den zweiten Parameter der Funktion json_decode, um ihn in ein assoziatives Array umzuwandeln. 🎜🎜🎜In der tatsächlichen Entwicklung können wir die geeignete Methode entsprechend den tatsächlichen Anforderungen auswählen. Es ist zu beachten, dass bei der Konvertierung in Arrays möglicherweise eine rekursive Verarbeitung erforderlich ist, wenn das JSON-Objekt verschachtelte JSON-Objekte oder Arrays enthält. 🎜

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie ein PHP-JSON-Objekt in ein Array. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage