Inicio > Internet, Programación > Pasar array de PHP a Javascript

Pasar array de PHP a Javascript

Miércoles, 30 de abril de 2008 Dejar un comentario Ir a comentarios

JavaScriptphp logo

Normalmente cuando pasamos objetos entre PHP y Javascript, suelen ser variables simples o elementos HTML para trabajar sobre ellos, pero en ocasiones se hace necesario trabajar variables de datos bastante más grandes como puede ser un array.

Tras darle muchas vueltas a la cabeza y explorar mucho por la Web dí con el siguiente método para pasar un array en php a una función javascript. El método consiste en utilizar la función implode de php que coge un array y lo convierte en cadena separando cada uno de los elementos del array con una cadena que tu le especifiques. La sintaxis de esta función es:

string implode ( string $elemento_union, array $trozos);

Una vez que tenemos esta cadena se la pasamos a la función de javascript tal cual, y para convertir esta cadena a un array utilizamos la función split, cuya sintaxis es:

stringObject.split(separator, howmany)

De este modo, haciendo que $elemento_union y separator sea la misma cadena o caracter conseguiremos tener el mismo array que teníamos en php para javascript. Aquí os pongo un ejemplo de como he utilizado estos conceptos.

<script language="javascript" type="text/javascript">
...
function showDataDate(indice, cadena){
   var trozos = cadena.split(",");
   if (document.adminForm.sucesos.options[indice].value != -99){
      var mensaje = trozos[document.adminForm.sucesos.options[indice].value];
      var campo = getObject('fecha_info');
      campo.innerHTML = mensaje;
   }
}
...
</script>
...
<SELECT multiple="true" name ="sucesos" id="suceso" size="7" onchange="showDataDate(this.selectedIndex, '<?php echo implode(",", $miArray);?>')">
GD Star Rating
loading...
Pasar array de PHP a Javascript, 8.0 out of 10 based on 16 ratings
Share
  1. Jose
    Martes, 9 de septiembre de 2008 a las 19:13 | #1
    GD Star Rating
    loading...

    Consulta , se puede pasar una varible de Javascript en el ARRAY de PHP o primero tendria que convertir el array de PHP al array de PHP?
    Por favor me podrias dar ejemplos.
    Muchas gracias.

  2. Martes, 9 de septiembre de 2008 a las 19:25 | #2
    GD Star Rating
    loading...

    Ups creo que te has liado un poco con lo de “convertir el array de PHP al array de PHP” jeje. Intenta explicarme lo que quieres hacer con un ejemplo a ver si te puedo ayudar, aunque llevo un tiempo sin tocar el tema de PHP y Javascript. Si quieres contesta por correo para que sea más cómoda la lectura ;)

  3. Julian
    Lunes, 10 de noviembre de 2008 a las 09:02 | #3
    GD Star Rating
    loading...

    Hola yo e usado tu codigo y me sigue dando error no m pasa la cadena de caracteres a la funcion php que yo kiero si m puedes ayudar xfavor gracias :)

  4. Julian
    Lunes, 10 de noviembre de 2008 a las 09:05 | #4
    GD Star Rating
    loading...

    m pone string literal indeterminado

  5. Miércoles, 10 de diciembre de 2008 a las 19:17 | #5
    GD Star Rating
    loading...

    Ole ole, a estas alturas y me ha servido un montón, Pipaco :D :D

    Si es q pa que luego digan q los blogs son frikadas inservibles!

    Un abrazo!

  6. Miércoles, 10 de diciembre de 2008 a las 21:05 | #6
    GD Star Rating
    loading...

    Jajaja en esa época aprendimos bastante PHP y aquí queda plasmado por los siglos de los siglos amen!!! xD

  7. mario|
    Lunes, 19 de octubre de 2009 a las 17:34 | #7
    GD Star Rating
    loading...

    le falta explicarlo ¿donde esta tu arreglo PHP?? todo el codigo lo incluyes en el mismo documento???????????

  8. Jueves, 24 de junio de 2010 a las 02:30 | #8
    GD Star Rating
    loading...

    x>La web siguiente http://www.vertutoriales.com/om/index.php/tag/php/

  9. Carlos
    Miércoles, 8 de febrero de 2012 a las 02:02 | #9
    GD Star Rating
    loading...

    y como hariamos un array bidimensional?

  1. Sin trackbacks aún.