Estoy leyendo de la base de datos con un texto en hebreo y tratando de json_encode
. si print_r
los resultados que obtengo:php json_encode() show null en lugar de texto
Array
(
[0] => Array
(
[value] => 88
[text] => כיתה א'
[parent_id] => 1
[level] => 1
)
[1] => Array
(
[value] => 89
[text] => כיתה ב'
[parent_id] => 1
[level] => 1
)
[2] => Array
(
[value] => 91
[text] => כיתה ג'
[parent_id] => 1
[level] => 1
)
)
mientras que el json_encode muestra:
[{"value":"88","text":null,"parent_id":"1","level":"1"},{"value":"89","text":null,"parent_id":"1","level":"1"},{"value":"91","text":null,"parent_id":"1","level":"1"}]
i belive que es porque mi texto de la base de datos contiene un (') marca. intenté varias combinaciones de stripslashes o real_escape_string que ninguno ha ayudado.
No es el ' '' cotización. Lo más probable es que su codificación de texto no sea UTF-8. ¿O qué juego de caracteres tienen las tablas de la base de datos? – mario
¿Qué codificación de caracteres estás usando? El problema definitivamente parece ser el que falta ', parece que necesita limpiar los datos del DB codificándolo en UTF-8 –
json_encode solo funciona con cadenas utf-8 de acuerdo con los documentos. compruebe la salida de 'json_last_error()'. http://php.net/json-last-error. utf8 codifica tus cadenas antes de llamar a json_encode. –