Есть ли разница между json_decode ($ var) и (object) json_decode ($ var, true)?
В последнее время, работая над определенным кодом в Joomla virtuemart, я пришел в недоумение. Virtumart использует (объект) json_decode ($ var, true) для своего cartObject, и если я изменю его на простой json_decode ($ var), после этого он покажет некоторую ошибку. При дальнейшем отладки я нашел телеги структуру, как:
stdClass Object
(
[cartProductsData] => Array
(
)
[vendorId] => 0
[automaticSelectedShipment] =>
[automaticSelectedPayment] =>
[order_number] =>
[BT] => Array
(
)
[ST] => Array
(
)
)
Хотя на изменения кода, т.е. json_decode ($ Var), результат:
stdClass Object
(
[cartProductsData] => Array
(
)
[vendorId] => 0
[automaticSelectedShipment] =>
[automaticSelectedPayment] =>
[order_number] =>
[BT] => stdClass Object
(
)
[ST] => stdClass Object
(
)
)
Так BT и ST являются объектами в настоящее время, а чем массивы, как раньше, но как? Любое объяснение будет оценено.
Кастинг для объекта воздействует только на элементы 1-го уровня массива. – Steve
ОК. теперь я получил его (y) – Anant