json_encode возвращает ноль, если массив не был доступен ранее - PullRequest
2 голосов
/ 09 марта 2011

В моем коде я создаю массив и кодирую его, используя json_encode, json_encode возвращает ноль для этого массива, если я не вставлю инструкцию "echo $ responsece-> row [0] [0];"перед кодированием, если я закомментирую эту строку, json_encode вернет ноль!

Может кто-нибудь выяснить, почему?

echo $responce->rows[0][0];
echo json_encode($responce);

Такое поведение имеет этот кодированный json, но работает для разных массивов:

{"rows":[{"id":"33UD","cell":["Great Yarmouth Borough Council",5875732.23,61.01]},
{"id":"41UE","cell":["Newcastle-Under-Lyme District Council",2514111.76,20.24]},
{"id":"36UF","cell":["Ryedale District Council",96439.18,1.8]},{"id":"00CM","cell":
["Sunderland City Council",16473262.71,58.48]}]}

1 Ответ

2 голосов
/ 09 марта 2011

Вы получите null, возвращаемое json_encode, если значения вашего массива не закодированы в utf8 (поэтому они не безопасны для json_encode)

, если вы получите данные из базыпопробуйте использовать:

mysql_query('SET CHARACTER SET utf8') до вашего SELECT заявления

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...