Eu tenho um problema para converter um objeto stdClass em matriz. Eu tentei desta maneira:
return (array) $booking;
ou
return (array) json_decode($booking,true);
ou
return (array) json_decode($booking);
A matriz antes do elenco está cheia com um registro, depois que minha tentativa de elenco estiver vazia. Como converter / converter sem excluir suas linhas?
matriz antes do lançamento:
array(1) { [0]=> object(stdClass)#23 (36) { ["id"]=> string(1) "2" ["name"]=> string(0) "" ["code"]=> string(5) "56/13" } }
depois que o elenco estiver vazio NULL se eu tentar fazer uma var_dump($booking);
Eu também tentei esta função, mas sempre vazio:
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);
saídas NULL
?
var_dump()
antes de lançar. Não reutilize o mesmo nome de variável btw. se $booking
havia algo antes do lançamento, ainda deve ser algo antes do lançamento e não algo diferente depois. Diferir entre as variáveis de entrada e de processamento, caso contrário, você terá problemas que não entenderão mais o que faz lá.
return
. E rodarjson_decode
em uma matriz parece bastante desesperador para mim, provavelmente sentado demais na frente do computador e agora é hora de fazer uma pausa?