[英]How do I access a PHP variable from JavaScript?
如何在JavaScript中調用PHP變量或查詢?
<script>
var foo = <?php echo $foo; ?>;
// or, if foo is a string;
var foo = '<?php echo addslashes($foo); ?>';
// for anything more complex, you'll need to use json_encode, if available in your version of PHP
var foo = <?php echo json_encode($foo); ?>;
</script>
請注意,您只能通過一種方式執行此操作。 不要期望您在javascript中所做的任何更改都會傳遞到PHP。
PHP和JavaScript不能直接混合使用。 您使用PHP服務器端來生成JavaScript並將其發送到客戶端。 JavaScript執行客戶端,並且只能通過AJAX調用與服務器上的PHP代碼進行通信。 使用jQuery之類的AJAX庫可以大大簡化此操作。
您必須記住,PHP代碼是在服務器上評估的,而JavaScript(通常)是在瀏覽器中運行的。 評估發生在不同的時間,不同的地方。 因此,僅由於無法調用另一台計算機上存在的函數,就無法從PHP調用JavaScript函數(或變量)。
您可能要檢查Ajax是否適合您的問題。
通常,您不能。 PHP是服務器端的,而Javascript是客戶端的(由瀏覽器處理)。
例外是使用AJAX,它允許您訪問PHP頁面,然后應執行所需的操作。
您可以為此使用JSON ,它非常適合從PHP向Javascript發送大數組。 我們需要在PHP腳本中回顯JavaScript代碼,或者我們可以為此使用Ajax。 但是通常我們可能需要發送一個大數組。 所以我們可以這樣
<script>
<?php
$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
?>
var foo = echo json_encode($arr);
</script>
json_encode
函數將處理所有轉義和其他問題。 錯誤還請確保json_encode
在您的PHP版本中可用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.