Manchmal möchte man bei der Arbeit mit API einfach ein Objekt als Objekt behalten. Um auf ein Objekt zuzugreifen, das verschachtelte Objekte enthält, können Sie wie folgt vorgehen:
Wir gehen davon aus, dass Sie dies sehen, wenn Sie das Objekt drucken:
print_r($response);
stdClass object
(
[status] => success
[message] => Some message from the data
[0] => stdClass object
(
[first] => Robert
[last] => Saylor
[title] => Symfony Developer
)
[1] => stdClass object
(
[country] => USA
)
)
Um auf den ersten Teil des Objekts zuzugreifen:
print $response->{'status'};
Und das würde "Erfolg" ergeben
Lassen Sie uns nun die anderen Teile eingeben:
$first = $response->{0}->{'first'};
print "First name: {$first}<br>";
Die erwartete Ausgabe wäre "Robert" mit einem Zeilenumbruch.
Sie können auch einen Teil des Objekts einem anderen Objekt neu zuordnen.
$contact = $response->{0};
print "First Name: " . $contact->{'first'} . "<br>";
Die erwartete Ausgabe wäre "Robert" mit einem Zeilenumbruch.
Für den Zugriff auf die nächste Taste "1" ist der Vorgang derselbe.
print "Country: " . $response->{1}->{'country'} . "<br>";
Die erwartete Ausgabe wäre "USA".
Ich hoffe, dies hilft Ihnen, Objekte zu verstehen und zu verstehen, warum wir ein Objekt als Objekt behalten wollen. Sie sollten ein Objekt nicht in ein Array umwandeln müssen, um auf seine Eigenschaften zuzugreifen.