jennifer antonio
¿Qué causa este error en mi código?
$query = $this->db->query("SELECT * FROM tour_foreign ORDER BY id desc");
$data = array();
foreach ($query->result() as $row)
$data[] = array('guide' => $row->guide);
echo json_decode($data); //Line 167
error:
erro: json_decode() expects parameter 1 to be string, array given: Line Number: 167
ACTUALIZAR:
si uso json_encode
en lugar de json_decode
mi salida es esta:
[{"guide":["\u0633\u06cc\u062f \u0633\u0639\u06cc\u062f \u062f\u0627\u062f\u0627\u0634\u0632\u0627\u062f\u0647"]},{"guide":["\u0633\u06cc\u062f \u0633\u0639\u06cc\u062f \u062f\u0627\u062f\u0627\u0634\u0632\u0627\u062f\u0647"]},{"guide":null}]
Son palabras persas.
genérico
creo que quieres json_encode
no json_decode
.
-
si uso de
json_encode
mi salida es esta:[{"guide":["\u0633\u06cc\u062f \u0633\u0639\u06cc\u062f \u062f\u0627\u062f\u0627\u0634\u0632\u0627\u062f\u0647"]},{"guide":["\u0633\u06cc\u062f \u0633\u0639\u06cc\u062f \u062f\u0627\u062f\u0627\u0634\u0632\u0627\u062f\u0647"]},{"guide":null}]
son palabras persas– Jennifer Antonio
15 de septiembre de 2011 a las 20:18
-
@Selena: La
\u0633
los caracteres son solo caracteres Unicode que están codificados. La primeraguide
esسید سعید داداشزاده
. ¿Está bien?– genérico
15 de septiembre de 2011 a las 20:23
-
@Selena: ¿Enseñarlo dónde? Si repite la cadena (en JavaScript), se imprimirán correctamente. No necesita hacer nada especial, solo repetirlos normalmente.
– genérico
15 de septiembre de 2011 a las 20:29
-
No quiero repetirlos en JavaScript. ¿Qué quieres decir con repetirlos normalmente?
– Jennifer Antonio
15/09/2011 a las 20:33
-
@Selena: ¿Qué estás tratando de hacer aquí? ¿Qué quieres hacer con las palabras?
– genérico
15/09/2011 a las 20:34
Kareem
Establecer la decodificación en verdadero
Su decodificación no está configurada como verdadera. Si no tiene acceso para establecer la fuente en verdadero. El siguiente código lo arreglará por ti.
$WorkingArray = json_decode(json_encode($data),true);
json_decode() se usa para decodificar una cadena json en una matriz/objeto de datos. json_encode() crea una cadena json a partir de una matriz o datos. Estás usando la función incorrecta, amigo mío, prueba con json_encode();
-
hacer un objeto
$obj = json_decode(json_encode($need_to_json));
-
Mostrar datos de este $obj
$obj->{'needed'};
Akhil jainista
aquí está la solución para un problema similar al que me enfrentaba al extraer el nombre del perfil de usuario facebook json object
$uname=json_encode($userprof);
$uname=json_decode($uname);
echo "Welcome " . $uname -> name ;
Ok, me estaba encontrando con el mismo problema. Lo que no noté es que estaba usando json_decodificar() En lugar de usar json_encode() así que para aquellos que van a venir aquí, asegúrese de estar usando la función correcta, que es json_encode()
Nota: Depende de en qué esté trabajando, pero asegúrese de estar usando la función correcta.
Está pasando una matriz donde se espera una cadena. Está creando la matriz en la línea anterior, ¿es necesario? ¿Por qué no simplemente usar
$row->guide
¿directamente?– Peka
15/09/2011 a las 20:15
Qué está tratando de lograr ?
– aziz punjani
15/09/2011 a las 20:20
¿Qué está tratando de hacer aquí?
– genérico
15/09/2011 a las 20:40