pasar variables php a Javascript

Alguna veces deseamos pasar el contenido de una variable PHP y pasársela a Javascript, lo mas importante para que funcione bien es cuidar el sintax de tu código…

Por ejemplo querés pasara un array de PHP a Javascript para que este este definido en tu Javascript..
Bueno les voy a enseñar que no es tan difícil..
Considera que tu servidor tiene que parsear PHP para que estos ejemplos pueden funcionar..

Ejemplo, pasemos una cadena de palabras de PHP y un array de PHP a javascript:

<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
	<script type="text/javaScript">
	    // creamos nuestra PHP variable.
		<?php $phpvar    = "este es mi contenido en php un string.." ?>

		// y la metemos ahora en una variable Javascript.
        var jsvar  = '<?php echo $phpvar; ?>';

		// creemos un array de php y pasemos el contenido en una variable javascript.
		<?php $phparray  = array('un string', 1, 0.358); ?>

		// creamos ahora una array en javascript.
		var jsarray      = [];

		// pasemos nuestro array de php a nuestra array de javascript.
		<?php
		    for($i=0; $i < count($phparray); $i++ ){
		        echo 'jsarray['.$i.'] = "'.$phparray[$i].'";';
		    }
		?>

		window.onload = function(){
			alert(jsvar);
			alert(jsarray);
		}
	</script>
</head>
<body>
</body>
</html>

Déjenme explica un poco..

// creamos nuestra php variable.
		<?php $phpvar    = "este es mi contenido en php un string.." ?>

		// y la metemos ahora en una variable Javascript.
        var jsvar  = '<?php echo $phpvar; ?>';

En este pedazo , creamos nuestra variable PHP y le asignamos una cadena de palabras o (string) a esta.. ya creado pasamos a declarar una variable Javascript..

Al mismo utilizamos usamos una comillas simple y después usamos la tag de PHP i el echo para printear su contenido y asignarlo a la variable Javascript serramos la variable Javascript con la misma clase de comillas simple..

Ahora dejen explico el ejemplo de array.

// creemos un array de php y pasemos el contenido en una variable javascript.
		<?php $phparray  = array('un string', 1, 0.358); ?>

		// creamos ahora una array en javascript.
		var jsarray      = [];

		// pasemos nuestro array de php a nuestra array de javascript.
		<?php
		    for($i=0; $i < count($phparray); $i++ ){
		        echo 'jsarray['.$i.'] = "'.$phparray[$i].'";';
		    }
		?>

Empezamos asignando una array a una variable PHP, enseguida declaramos nuestra variable Javascript como array, enseguida procesamos el array de php con un loop por cada elemento que tenga el array de php, el loop lo asignara al array de Javascript, observa cuidadosamente que aquí utilice el echo de PHP y printee el nombre del array en Javascript, en el indice de el array de Javascript asigne el valor de $i de PHP, i el valor de el array PHP lo asigne también a el array de Javascript..

observa también como empece con la comillas dobles al dar el valor de el index de PHP a el array de Javascript si ellas no estuvieran Javascript me daría un error y no se asignaría propiamente el array de Javascript..

bueno espero le sirve a alguien, ya que a mi me costo algo entenderle.

23 thoughts on “pasar variables php a Javascript”

  1. Necesito hace lo mismo para una variable Fecha en php pasarla a javascript pero con el formato que maneja el newDate. Te agradezco mucho si me puedes colaborar.

  2. Hola,

    El cliente eres tu o para ser mas preciso tu explorador, este corre el Javascript que tenga la pagina, pero php no es igual es parseado o corre por el servidor que te lo manda en forma que explorador que tengas lo entienda…
    Por esto se dice , servidor y cliente , javascript es para el cliente y php en el servidor, espero se entienda la explicacion.

  3. Disculpa tengo un problema, necesito saver si existe un dato en my bd desde php am despues guardar la validacion dentro de una variable o es mi problema como lo aria por q despues quiero utilizar esa variable con la validacion en un script para asi poder desabilitar un boton siempre y cuando exista un dato en my bd …. de antemano grasias …

  4. <?php
    9
    for($i=0; $i
    Eso va en el php o en el javascript?
    Disculpa mi ignorancia.
    Muy bueno el aporte, me hace falta…

  5. Hola,

    Ese es php, pero lo puedes usar en Javascript.

    var variable_javascript = "<?php echo "esto es php"; ?>";
    
  6. Gran codigo.

    Tengo una duda ya que no soy muy experimentado.

    Tengo un fichero PHP que tras hacer varias operaciones con cadenas guarda los distintos resultados en un ARRAY.

    Desde un fichero HTML usando javascript podria leer y copiarme el contenido del array?

    La idea es hacer lo que haces en el ejemplo pero con dos ficheros diferentes.

    Gracias.

  7. Hola,

    Si se puede, lo que debes hacer es una llamada Ajax al documento php que crea el susodicho Array , lo conviertes en JSON y lo usas en el callback de el método Ajax,

    usas jQuery.parseJSON(); si lo usas y este te da un objeto que puedes utiliza..

  8. Pingback: twitter retweets
  9. hola amigo gracias de antemano yo solo quiero compartir el valor de una variable en dos funciones ese es mi ejemplo

    function nombre($id){ //el ID lo traigo con un post trabajo en modelo vista controlador
    // aqui hago todas las consultas que necesito

    }
    function consulta(){
    //aqui quiero volver a usar el ID que traigo para acer mas consultas como lo puedo hacer ?? gracias de antemano

    }

  10. Hola,

    Disculpa que responda tan tarde..
    No entendí bien la pregunta pero te are un ejemplo hasta donde entendí.

    function nombre($id){ //el ID lo traigo con un post trabajo en modelo vista controlador
        // aqui hago todas las consultas que necesito
        echo "<script>consulta(". $id ."); </script>";
    
    }
    function consulta( id ){
        //aquí quiero volver a usar el ID que traigo para acer mas consultas como lo puedo hacer ?? gracias de antemano
       // as algo con el id
    }
    

    Como veras a la funcion javascript consulta le das un argumento lo cual lo pasastes en la funcion php nombre..

    Claro esta si entendí que es lo que quieres hacer.

Leave a Reply

Your email address will not be published. Required fields are marked *