json_encode/json_decode - возвращает stdClass вместо Массива в PHP

Наблюдайте этот небольшой сценарий:

$array = array('stuff' => 'things');
print_r($array);
//prints - Array ( [stuff] => things )
$arrayEncoded = json_encode($array);
echo $arrayEncoded . "<br />";
//prints - {"stuff":"things"}
$arrayDecoded = json_decode($arrayEncoded);
print_r($arrayDecoded);
//prints - stdClass Object ( [stuff] => things )

Почему PHP поворачивает Объект JSON в класс?

Не был должен массив, который является json_encoded затем json_decoded привести к тому же самому результату?

102
задан T Zengerink 4 October 2012 в 08:49
поделиться

2 ответа

Внимательно изучите второй параметр json_decode ($ json, $ assoc, $ depth) по адресу https://secure.php.net/json_decode

140
ответ дан 24 November 2019 в 04:28
поделиться
$arrayDecoded = json_decode($arrayEncoded, true);

дает вам массив.

76
ответ дан 24 November 2019 в 04:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: