Foros del Web » Programando para Internet » PHP »

array para atributo html

Estas en el tema de array para atributo html en el foro de PHP en Foros del Web. Hola. Tengo un array que con un print_r me devuelve esto: hola, adios Lo que quiero es meterlo como valor de un atributo html y ...
  #1 (permalink)  
Antiguo 09/10/2013, 15:25
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 14 años, 10 meses
Puntos: 6
array para atributo html

Hola. Tengo un array que con un print_r me devuelve esto:

hola, adios

Lo que quiero es meterlo como valor de un atributo html y que quede así:

data-source="["hola","adios"]"

pero haciendo esto:

data-source="[<?php echo $array;?>]"

Me queda así:

data-source="[hola,adios]", es decir, sin las comillas dobles que quiero que aparezcan.

Gracias.
  #2 (permalink)  
Antiguo 09/10/2013, 15:28
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: array para atributo html

Debes usar json_encode() para codificar correctamente el array.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 10/10/2013, 02:18
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 14 años, 10 meses
Puntos: 6
Respuesta: array para atributo html

Hola. Gracias por tu respuesta. Funciona bien, pero la funcion, en un texto como este:

Goleada para soñar

me devuelve esto:

Goleada para so\u00c3\u00b1ar

¿Como puedo solucionar esto?
  #4 (permalink)  
Antiguo 10/10/2013, 04:12
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: array para atributo html

Lee la documentación de PHP, ahí dice claramente que json_encode() funciona solo para utf8, por lo que tal vez debas usar utf8_encode() o iconv() para codificar la cadena antes de pasarla a json.
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: html
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:12.