Ich habe ein Problem beim Konvertieren eines Objekts stdClass in ein Array. Ich habe es so versucht:
return (array) $booking;
oder
return (array) json_decode($booking,true);
oder
return (array) json_decode($booking);
Das Array vor der Besetzung ist mit einem Datensatz voll, nach meinem Versuch, es zu besetzen, ist es leer. Wie kann man es umwandeln / konvertieren, ohne seine Zeilen zu löschen?
Array vor der Besetzung:
array(1) { [0]=> object(stdClass)#23 (36) { ["id"]=> string(1) "2" ["name"]=> string(0) "" ["code"]=> string(5) "56/13" } }
nach der Besetzung ist leer NULL, wenn ich versuche, eine zu machen var_dump($booking);
Ich habe diese Funktion auch ausprobiert, aber immer leer:
public function objectToArray($d) {
if (is_object($d)) {
// Gets the properties of the given object
// with get_object_vars function
$d = get_object_vars($d);
}
if (is_array($d)) {
/*
* Return array converted to object
* Using __FUNCTION__ (Magic constant)
* for recursive call
*/
return array_map(__FUNCTION__, $d);
}
else {
// Return array
return $d;
}
}
var_dump($booking);
Ausgänge NULL
?
var_dump()
vor dem Casting darum gebeten . Verwenden Sie übrigens nicht denselben Variablennamen erneut. Wenn $booking
es etwas vor dem Casting war, sollte es immer noch etwas vor dem Casting sein und nicht etwas anderes danach. Unterscheiden Sie zwischen Eingabe- und Verarbeitungsvariablen, da sonst Probleme auftreten, die Sie nicht mehr verstehen, was Sie dort tun.
return
. Undjson_decode
auf einem Array zu laufen scheint mir ziemlich verzweifelt, wahrscheinlich zu lange vor dem Computer zu sitzen und es ist jetzt Zeit, eine Pause zu machen?