Heim  >  Artikel  >  Backend-Entwicklung  >  Besprechen Sie, wie PHP JSON in ein Array konvertiert (drei Methoden)

Besprechen Sie, wie PHP JSON in ein Array konvertiert (drei Methoden)

PHPz
PHPzOriginal
2023-04-03 15:00:56919Durchsuche

PHP ist eine häufig verwendete Programmiersprache, die JSON in Arrays konvertieren kann, wodurch die Datenverarbeitung und -verwaltung einfacher und effizienter wird. Im Folgenden finden Sie einige Methoden und Techniken, mit denen Entwickler diesen Vorgang schnell implementieren können.

  1. Verwenden Sie die Funktion json_decode()

In PHP kann die Funktion json_decode() problemlos Daten im JSON-Format in ein PHP-Array konvertieren. Die spezifische Syntax lautet wie folgt:

mixed json_decode ( string $json [, bool $assoc = false [, int $depth = 512 [, int $options = 0 ]]] )

Parameterbeschreibung:

  • $json : Übergeben Sie einen JSON-String; $json: 传入一个JSON字符串;
  • $assoc: (可选)默认为false,表示返回一个stdClass对象;若设置为true,则返回一个数组;
  • $depth: (可选)表示递归的最大深度,默认为512层;
  • $options: (可选)设置解码时的选项,常见的有JSON_BIGINT_AS_STRING(将大数字转换成string类型)、JSON_OBJECT_AS_ARRAY(将stdClass对象转换成数组)等。

例如:

$json_str = '{"name":"Jack","age":30,"city":"Beijing"}';
$arr = json_decode($json_str, true);
print_r($arr);

输出结果为:

Array (
    [name] => Jack
    [age] => 30
    [city] => Beijing
)
  1. 使用json_decode()函数 + file_get_contents()函数

不仅可以将JSON字符串转为数组,还可以将JSON数据从一个文件中读取,然后将其转换为数组。此时可以使用file_get_contents()函数来读取JSON文件中的内容,再使用上述的json_decode()函数实现转换。

例如:

$json_file = 'data.json';
$json_str = file_get_contents($json_file);
$arr = json_decode($json_str, true);
print_r($arr);
  1. 使用json_decode()函数 + curl库

如果JSON数据不在本地文件中,而是通过网络传输过来的,此时可以使用curl库获取JSON数据,然后使用json_decode()函数实现转换。

例如:

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://api.example.com/data.json');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($curl);
curl_close($curl);

$arr = json_decode($result, true);
print_r($arr);

上述代码使用了curl库来请求https://api.example.com/data.json接口,将返回的JSON数据转换为数组,并输出结果。

总结

本文介绍了三种将JSON数据转换为PHP数组的方法,各具优缺点,开发者可以根据实际情况选择适合的方法。在使用json_decode()

$assoc: (optional) Der Standardwert ist false, was bedeutet, dass ein stdClass-Objekt zurückgegeben wird; ; 🎜🎜 $length: (optional) gibt die maximale Rekursionstiefe an, der Standardwert ist 512 Ebenen; 🎜🎜$options: (optional) legt die Optionen beim Dekodieren fest, gängige sind JSON_BIGINT_AS_STRING (große Zahlen in String-Typ umwandeln), JSON_OBJECT_AS_ARRAY (stdClass-Objekte in Arrays umwandeln) usw. 🎜🎜Zum Beispiel: 🎜rrreee🎜Das Ausgabeergebnis ist: 🎜rrreee
    🎜Verwenden Sie die Funktion json_decode() + die Funktion file_get_contents()🎜🎜🎜 kann nicht nur JSON-String in Array konvertieren, aber auch JSON-Daten können aus einer Datei gelesen und dann in ein Array umgewandelt werden. Zu diesem Zeitpunkt können Sie die Funktion file_get_contents() verwenden, um den Inhalt der JSON-Datei zu lesen, und dann die oben erwähnte Funktion json_decode() verwenden, um eine Konvertierung durchzuführen. 🎜🎜Zum Beispiel: 🎜rrreee
      🎜Verwenden Sie die Funktion json_decode() + Curl-Bibliothek🎜🎜🎜Wenn sich die JSON-Daten nicht in der lokalen Datei befinden, sondern über das Netzwerk übertragen werden, können Sie Curl verwenden Bibliothek, um die JSON-Daten abzurufen, und verwenden Sie dann die Funktion json_decode(), um die Konvertierung zu implementieren. 🎜🎜Zum Beispiel: 🎜rrreee🎜Der obige Code verwendet die Curl-Bibliothek, um die Schnittstelle https://api.example.com/data.json anzufordern, die zurückgegebenen JSON-Daten in ein Array zu konvertieren und das Ergebnis ausgeben. 🎜🎜Zusammenfassung🎜🎜In diesem Artikel werden drei Methoden zum Konvertieren von JSON-Daten in PHP-Arrays vorgestellt. Jede hat ihre eigenen Vor- und Nachteile. Entwickler können die geeignete Methode entsprechend der tatsächlichen Situation auswählen. Wenn Sie die Funktion json_decode() verwenden, müssen Sie auch auf Dekodierungsoptionen, Rekursionstiefe, zurückgegebenen Datentyp und andere Probleme achten, um Fehler zu vermeiden. Ich glaube, dass die Arbeitseffizienz von PHP-Entwicklern durch die Beherrschung dieser Fähigkeiten erheblich verbessert wird. 🎜

Das obige ist der detaillierte Inhalt vonBesprechen Sie, wie PHP JSON in ein Array konvertiert (drei Methoden). 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