簡體   English   中英

如何從JavaScript訪問PHP變量?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM