Результат json_encode php равен NULL?

Возможный дубликат:
json_encode возвращает NULL?

У меня возникла странная проблема с json_encode() в php. Довольно простой код:

 $content = json_encode(array('content1' => $arm_length, 'content2' => $body_length)); echo $content; 

$arm_length и $body_length содержат разметку HTML для двух выпадающих меню. Моя проблема заключается в том, что она выводит его NULL content1 для content1 и content1 . Если я json_encode() и просто сделаю print_r($content) он отобразит все данные так, как должно быть.

Кто-нибудь знает, что здесь происходит? Существуют ли определенные данные, которые не могут быть проанализированы в JSON? Я сделал это несколько раз, используя Ajax / PHP и никогда не испытывал никаких проблем.

Приветствия за любую помощь в этом.

json_encode() имеет (недокументированную) привычку без умозрительных свойств, которые содержат недопустимые символы (= не-UTF-8).

Убедитесь, что ваши входные данные закодированы в кодировке UTF-8, что является документированным требованием к этой функции.

В случае сбоя в кодировке json_last_error() может использоваться для определения точного характера ошибки. (Доступно только в PHP 5.3)

Связано: Как сохранить json_encode () от выпадающих строк с недопустимыми символами

цитаты внутри ваших vars "должны быть экранированы следующим образом: \" вы можете сделать это с помощью add_slashes ($ arm_length)

Также json выдает ошибки на \ n (новая строка) и некоторые другие символы, вы можете найти полный список здесь – http://json.org/