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

So konvertieren Sie ein Array-Objekt in PHP JSON

PHPz
Freigeben: 2023-04-26 09:51:31
Original
505 Leute haben es durchsucht

In der Webentwicklung ist das JSON-Format sehr verbreitet, da es die Übertragung und den Austausch von Daten zwischen verschiedenen Programmiersprachen ermöglicht. Die PHP-Sprache bietet außerdem eine sehr praktische JSON-Kodierungs- und Dekodierungsmethode, mit der JSON-Strings in PHP-Arrays oder -Objekte sowie PHP-Arrays oder -Objekte in JSON-Strings konvertiert werden können. In diesem Artikel werden Methoden in PHP zum Konvertieren von JSON-Strings in Arrays oder Objekte vorgestellt und Arrays oder Objekte weiter in Arrays oder Objekte konvertiert.

  1. Konvertierung von JSON in Array

Verwenden Sie die in PHP integrierte Funktion json_decode(), um Zeichenfolgen im JSON-Format in PHP-Arrays zu konvertieren. Die Funktion json_decode() empfängt zwei Parameter. Der erste Parameter ist die zu konvertierende JSON-Formatzeichenfolge. Wenn dieser Parameter auf „true“ gesetzt ist, wird das JSON-Format konvertiert . Dekodiert in ein assoziatives Array oder gibt ein Objekt zurück, wenn dieser Parameter falsch ist. Standardmäßig ist dieser Parameter falsch. json_decode()函数可以将JSON格式的字符串转换为PHP数组。json_decode()函数接收两个参数,第一个参数是要转换的JSON格式的字符串,第二个参数是一个布尔值,如果该参数设置为true,则将将JSON解码为关联数组,如果该参数为false,则返回一个对象。默认情况下该参数为false。

下面是一个使用json_decode()函数将JSON转换为数组的例子:

$jsonStr = '{"name":"Jack","age":20}';
$arr = json_decode($jsonStr, true);
print_r($arr);
Nach dem Login kopieren

以上代码将输出一个以键值对表示的数组:

Array
(
    [name] => Jack
    [age] => 20
)
Nach dem Login kopieren
  1. JSON转换为对象

如果不指定json_decode()函数的第二个参数,则将返回一个PHP对象。使用json_decode()函数将JSON格式的字符串转换为PHP对象非常简单,只需要传入JSON格式字符串即可。

下面是一个将JSON格式字符串转为PHP对象的例子:

$jsonStr = '{"name":"Jack","age":20}';
$obj = json_decode($jsonStr);
var_dump($obj);
Nach dem Login kopieren

以上代码将输出一个PHP对象:

object(stdClass)#1 (2) {
  ["name"]=>
  string(4) "Jack"
  ["age"]=>
  int(20)
}
Nach dem Login kopieren
  1. 数组转换为JSON字符串

使用PHP内置的json_encode()函数可以将PHP数组转化为JSON字符串。json_encode()函数接收一个参数,即要转换的PHP数组,在将PHP数组转换为JSON字符串时,json_encode()函数会自动将键值对转换为JSON字符串中的键值对。

下面是一个将PHP数组转换为JSON字符串的例子:

$arr = array("name"=>"Jack", "age"=>20);
$jsonStr = json_encode($arr);
echo $jsonStr;
Nach dem Login kopieren

以上代码将输出以下JSON格式的字符串:

{"name":"Jack","age":20}
Nach dem Login kopieren
  1. 对象转换为JSON字符串

用内置的json_encode()函数将PHP对象转化为JSON字符串也很简单。在转换前,需要使用json_encode()函数的另一个参数,即JSON_PRETTY_PRINT常量,它用于设置将JSON字符串格式化为易于阅读且更人类友好的格式。

下面是一个将PHP对象转换为JSON字符串的例子:

class Person {
    public $name;
    public $age;
    public function __construct($name, $age) {
        $this->name = $name;
        $this->age = $age;
    }
}
$person = new Person("Jack", 20);
$jsonStr = json_encode($person, JSON_PRETTY_PRINT);
echo $jsonStr;
Nach dem Login kopieren

以上代码将输出以下易于阅读的JSON格式的字符串:

{
    "name": "Jack",
    "age": 20
}
Nach dem Login kopieren
  1. 数组对象互相转换

将一个包含多个对象的数组转换为JSON格式的字符串,可以使用json_encode()函数。而将JSON格式的字符串转换回PHP数组对象,可以使用json_decode()函数。下面是一个将包含多个对象的数组转换成JSON格式的例子:

class Person {
    public $name;
    public $age;
    public function __construct($name, $age) {
        $this->name = $name;
        $this->age = $age;
    }
}
$person1 = new Person("Jack", 20);
$person2 = new Person("Tom", 25);
$person3 = new Person("Lucy", 18);
$arr = array($person1, $person2, $person3);
$jsonStr = json_encode($arr, JSON_PRETTY_PRINT);
echo $jsonStr;
Nach dem Login kopieren

以上代码将输出以下JSON格式的字符串:

[
    {
        "name": "Jack",
        "age": 20
    },
    {
        "name": "Tom",
        "age": 25
    },
    {
        "name": "Lucy",
        "age": 18
    }
]
Nach dem Login kopieren

接下来将这个包含多个对象的JSON格式的字符串转换回PHP数组对象:

$jsonStr = '[{"name":"Jack","age":20},{"name":"Tom","age":25},{"name":"Lucy","age":18}]';
$arr = json_decode($jsonStr);
print_r($arr);
Nach dem Login kopieren

运行以上代码,将输出以下PHP数组对象:

Array
(
    [0] => stdClass Object
        (
            [name] => Jack
            [age] => 20
        )

    [1] => stdClass Object
        (
            [name] => Tom
            [age] => 25
        )

    [2] => stdClass Object
        (
            [name] => Lucy
            [age] => 18
        )

)
Nach dem Login kopieren

由于使用json_decode()函数的第二个参数没有指定,所以将返回一个PHP对象数组。如果要将JSON解码为PHP关联数组,则需要将第二个参数设置为true

Das Folgende ist ein Beispiel für die Verwendung der Funktion json_decode() zum Konvertieren von JSON in ein Array:

rrreee

Der obige Code gibt ein Array aus, das durch Schlüssel-Wert-Paare dargestellt wird: 🎜rrreee
    🎜JSON zum Objekt🎜🎜🎜Wenn Sie den zweiten Parameter der Funktion json_decode() nicht angeben, wird ein PHP-Objekt zurückgegeben. Es ist sehr einfach, die Funktion json_decode() zu verwenden, um eine JSON-Formatzeichenfolge in ein PHP-Objekt zu konvertieren. Sie müssen nur die JSON-Formatzeichenfolge übergeben. 🎜🎜Das Folgende ist ein Beispiel für die Konvertierung einer JSON-Formatzeichenfolge in ein PHP-Objekt: 🎜rrreee🎜Der obige Code gibt ein PHP-Objekt aus: 🎜rrreee
      🎜Array in JSON-Zeichenfolge konvertieren🎜🎜🎜Verwenden PHP Die integrierte Funktion json_encode() kann PHP-Arrays in JSON-Strings konvertieren. Die Funktion json_encode() empfängt einen Parameter, nämlich das zu konvertierende PHP-Array. Bei der Konvertierung des PHP-Arrays in einen JSON-String wird die Funktion json_encode() automatisch konvertiert Das Schlüssel-Wert-Paar wird in Schlüssel-Wert-Paare in einer JSON-Zeichenfolge umgewandelt. 🎜🎜Hier ist ein Beispiel für die Konvertierung eines PHP-Arrays in einen JSON-String: 🎜rrreee🎜Der obige Code gibt den folgenden JSON-formatierten String aus: 🎜rrreee
        🎜Objekt in JSON-String konvertieren🎜🎜🎜 Das ist es Mit der integrierten Funktion json_encode() lassen sich PHP-Objekte auch einfach in JSON-Strings konvertieren. Vor der Konvertierung müssen Sie einen weiteren Parameter der Funktion json_encode() verwenden, die Konstante JSON_PRETTY_PRINT, mit der die JSON-Zeichenfolge leichter lesbar und menschlicher formatiert wird -freundliches Format. 🎜🎜Hier ist ein Beispiel für die Konvertierung eines PHP-Objekts in einen JSON-String: 🎜rrreee🎜Der obige Code gibt den folgenden einfach zu lesenden JSON-formatierten String aus: 🎜rrreee
          🎜Array-Objekte konvertieren in 🎜🎜 🎜Um ein Array mit mehreren Objekten in einen String im JSON-Format umzuwandeln, können Sie die Funktion json_encode() verwenden. Um einen JSON-formatierten String zurück in ein PHP-Array-Objekt zu konvertieren, können Sie die Funktion json_decode() verwenden. Das Folgende ist ein Beispiel für die Konvertierung eines Arrays, das mehrere Objekte enthält, in das JSON-Format: 🎜rrreee🎜 Der obige Code gibt die folgende JSON-formatierte Zeichenfolge aus: 🎜rrreee🎜 Als nächstes konvertieren Sie diese JSON-formatierte Zeichenfolge, die mehrere Objekte enthält, in das PHP-Array-Objekt: 🎜rrreee 🎜Durch Ausführen des obigen Codes wird das folgende PHP-Array-Objekt ausgegeben: 🎜rrreee🎜 Da der zweite Parameter der Funktion json_decode() nicht angegeben ist, wird ein Array von PHP-Objekten zurückgegeben. Wenn Sie JSON in ein assoziatives PHP-Array dekodieren möchten, müssen Sie den zweiten Parameter auf true setzen. 🎜🎜In diesem Artikel haben wir vorgestellt, wie man in PHP eine JSON-formatierte Zeichenfolge in ein Array oder Objekt konvertiert und wie man ein Array oder Objekt in eine JSON-Zeichenfolge umwandelt. Das Erlernen dieser Funktionen kann Ihnen helfen, JSON-Daten in Ihren Webanwendungen einfacher zu verarbeiten. 🎜

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