web-dev-qa-db-fra.com

Accès PHP variable en JavaScript

Dupliquer possible:
Comment accéder aux variables PHP en JavaScript ou jQuery plutôt qu'à <? Php echo $ variable?>

Est-il possible d'obtenir un accès à une variable PHP en JavaScript?

J'ai une variable, $a, dans PHP et je souhaite obtenir sa valeur dans une variable JavaScript.

32
sahil

Vous ne pouvez pas, vous devrez faire quelque chose comme

<script type="text/javascript">
   var php_var = "<?php echo $php_var; ?>";
</script>

Vous pouvez également le charger avec AJAX

rhino a raison, l'extrait manque d'un type pour des raisons de brièveté.

Notez également que si $php_var a des guillemets, votre script sera cassé. Vous devez utiliser addlashes, htmlentities ou une fonction personnalisée.

78
metrobalderas

metrobalderas a partiellement raison. En partie, car la valeur de la variable PHP peut contenir des caractères spéciaux, métacaractères en JavaScript. Pour éviter un tel problème, utilisez le code ci-dessous:

<script type="text/javascript">
var something=<?php echo json_encode($a); ?>;
</script>
42
rhino

Je ne sais pas à quel point cela est nécessaire, et cela ajoute un appel à getElementById, mais si vous souhaitez réellement extraire du code JavaScript intégré à votre code, vous pouvez le transmettre sous forme d'attribut HTML, à savoir:

<span class="metadata" id="metadata-size-of-widget" title="<?php echo json_encode($size_of_widget) ?>"></span>

Et ensuite dans votre JavaScript:

var size_of_widget = document.getElementById("metadata-size-of-widget").title;
0
yitznewton