Heim >Backend-Entwicklung >PHP-Problem >So konvertieren Sie ein PHP-Objekt-String-Array in ein JSON-Objekt-Array
In PHP können Sie Objekte zum Speichern einiger Daten verwenden, oder Sie können String-Arrays als Datenspeicherung verwenden. Oftmals müssen wir Objekte oder String-Arrays in das JSON-Format konvertieren . In diesem Artikel wird erläutert, wie Sie PHP-Objekt- und String-Arrays in JSON-Objekt-Arrays konvertieren.
1. PHP-Objekte in JSON-Objektarrays konvertieren
Um PHP-Objekte in JSON-Objektarrays zu konvertieren, müssen Sie die integrierte json_encode()-Funktion von PHP verwenden. Diese Funktion serialisiert ein PHP-Objekt in einen JSON-String.
Hier ist ein einfaches PHP-Objekt:
class Person { public $name; public $age; public $gender; function __construct($name, $age, $gender) { $this->name = $name; $this->age = $age; $this->gender = $gender; } } $person = new Person('Tom', 18, 'male');
Um das obige PHP-Objekt in JSON zu konvertieren, können Sie den folgenden Code verwenden:
$json = json_encode($person);
Wenn Sie mehrere PHP-Objekte in JSON-Arrays konvertieren möchten, können Sie den folgenden Code verwenden:
$persons = array( new Person('Tom', 18, 'male'), new Person('Lucy', 20, 'female'), new Person('John', 22, 'male') ); $json = json_encode($persons);
Zu diesem Zeitpunkt speichert die Variable $json ein JSON-Array mit drei Personen.
2. PHP-Array in JSON-Objektarray konvertieren
Wenn Sie ein gewöhnliches Array in PHP in ein JSON-Array konvertieren möchten, können Sie die Funktion json_encode() direkt verwenden.
Das Folgende ist ein PHP-Array:
$fruits = array('apple', 'orange', 'banana');
Um das obige PHP-Array in ein JSON-Array zu konvertieren, können Sie den folgenden Code verwenden:
$json = json_encode($fruits);
Wenn Sie ein assoziatives Array in JSON konvertieren möchten, können Sie den folgenden Code verwenden :
$person = array( 'name' => 'Tom', 'age' => 18, 'gender' => 'male' ); $json = json_encode($person);
3. PHP konvertieren String-Array in JSON-Objekt-Array konvertieren
Wenn Sie PHP-String-Array in JSON-Objekt-Array konvertieren müssen, können Sie den folgenden Code verwenden:
$strArr = '["apple", "orange", "banana"]'; $jsonArr = json_decode($strArr);
Im obigen Code verwenden wir json_decode( )-Funktion zum Parsen des String-Arrays in ein JSON-Array von Objekten.
Es ist zu beachten, dass in PHP zwei Arten von Arrays verwendet werden: Index-Arrays und assoziative Arrays. In JSON gibt es nur einen Array-Typ, nämlich ein Objektarray. Daher müssen Sie beim Konvertieren eines String-Arrays in PHP in ein Array von JSON-Objekten den Typ des Arrays explizit angeben.
Das Folgende ist ein assoziatives PHP-Array:
$person = array( 'name' => 'Tom', 'age' => 18, 'gender' => 'male' );
Um das obige assoziative PHP-Array in ein JSON-Objektarray umzuwandeln, können Sie den folgenden Code verwenden:
$strArr = '{"name": "Tom", "age": 18, "gender": "male"}'; $jsonArr = json_decode($strArr);
Im obigen Code verwenden wir zum Parsen die Funktion json_decode() das String-Array in ein JSON-Array von Objekten.
4. Fazit
Beim Konvertieren von PHP-Objekten und -Arrays in JSON-Objektarrays können Sie die integrierten Funktionen json_encode() und json_decode() von PHP verwenden. Es ist zu beachten, dass PHP-Arrays in Index-Arrays und assoziative Arrays unterteilt sind, während JSON nur einen Array-Typ hat, nämlich ein Objekt-Array. Beim Konvertieren eines PHP-String-Arrays in ein JSON-Objekt-Array müssen Sie den Array-Typ explizit angeben.
Das obige ist der detaillierte Inhalt vonSo konvertieren Sie ein PHP-Objekt-String-Array in ein JSON-Objekt-Array. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!