2011-05-05 170 views
22

可能重複:
What's the best way to pass a PHP variable to Javascript?如何將PHP變量值賦給Javascript變量?

我使用下面的代碼:

<script type="text/javascript"> 
<?php $ctnme = $_SERVER['REQUEST_URI']; 
$cnme = explode("/",$ctnme); 
echo $cname = $cnme[1]; 
?> 
var spge = <?php echo $cname; ?> ; 
alert(spge); 
</script> 

值不警惕。什麼是錯誤?

+0

HTTP://os-code-web.blogspot。 com/2011/05/can-you-set-javascript-variable-value.html – 2011-07-10 03:37:26

回答

46

本質:

<?php 
//somewhere set a value 
$var = "a value"; 
?> 

<script> 
// then echo it into the js/html stream 
// and assign to a js variable 
spge = '<?php echo $var ;?>'; 

// then 
alert(spge); 

</script> 
+5

如果$ var包含單引號,回車符... – 2011-05-05 10:10:15

+1

我同意,但是我得到的印象是這個問題似乎自從我第一次回覆說讓這個回覆看起來有很大變化之後,她現在多餘。 IIRC這是一個關於如何傳遞一個var,現在是一個數組的全部原理的問題。 – Cups 2011-05-05 10:19:05

+0

http://os-code-web.blogspot.com/2011/05/can-you-set-javascript-variable-value.html – 2011-07-10 03:37:17

0
**var spge = '';** 
alert(spge); 
2

把雙引號,以確保使用Javascript接受它作爲一個字符串,也考慮逃逸。

6

最安全的方式(在特殊字符和數據類型的處理而言)採用json_encode()

var spge = <?php echo json_encode($cname); ?>;