Javascript y PHP no se pueden combinar. Son dos programas completamente diferentes que se comunican solo vagamente. El PHP se ejecuta en la computadora del servidor y genera el HTML. El javascript se ejecuta en la computadora cliente en el navegador web y actúa sobre ese HTML. Si necesita mover información de PHP a Javscript de alguna manera, entonces tiene que almacenarla en el HTML y hacer que el Javascript acceda a través de ese HTML. Si necesita hacer lo contrario, mueva la información de Javascript a PHP, haga que el Javascript llame a una página PHP con una cadena de consulta.
Una forma de colocar la información en su matriz en algún lugar donde Javascript pueda acceder a ella, sería hacerla eco en un div oculto. Ya sea en una serie de intervalos ided o simplemente en una lista separada por comas. Entonces puedes sacarlo del DOM.
Por ejemplo:
<div style="display: none;" id="myArray">
<?php
echo '<span id="myArray.count">'.sizeof($s).'</span>';
for ($i = 0; $i < sizeof($s); $i++) {
echo '<span id="myArray.'.$i.'">'.$s[$i].'</span>';
}
?>
</div>
Luego, en el Javascript se puede acceder a la matriz en el DOM:
var myArray = new Array();
for(i = 0; i < document.getElementById('myArray.count').innerHTML; i++) {
document.write(document.getElementById('myArray.'+i).innerHTML);
}
Exención de responsabilidad: Código no probado, y no tengo el tiempo para perfeccionarlo ahora mismo. Si alguien más quiere comentar o editar para corregir cualquier error, siéntase libre :)
gracias hombre, funciona de esa manera! –
var lat = new Array(); var long = new Array(); Php foreach ($ latlong as $ a) {?> Lat.push (' Php echo $ a [0]?>'); long.push (' php echo $ a [1]?>'); –
I * realmente * espero que no * solo * imprima los vars ... (tiene 'echo' para eso) – mpen