我必須使用JavaScript呈現圖表。但是圖表的數據在服務器中。谷歌搜索後,我發現這可以通過使用服務器端scrpting語言如php和客戶端語言JavaScript或jQuery來完成。
客戶端腳本中的服務器端變量
var php_data= $.parseJSON('<?php echo json_encode($chart_data); ?>');
上面的代碼工作正常,我可以將服務器中的數據傳送到客戶端。
但我很好奇,如何做到這一點,因爲我們正在讀取客戶端的服務器端變量,我們不在這裏使用AJAX。這真是令人困惑,因爲php代碼在服務器上運行,並且javascript在客戶端運行。有沒有人知道這背後的理論?一個javascript如何訪問服務器?
如果我們可以通過JavaScript訪問任何php腳本中的變量,我們將不得不明確採取一些措施來確認php腳本的安全性。
是的,但我的觀點是如何php腳本知道js需要該變量?是js在頁面加載時請求它嗎? –
號你作爲程序員正在告訴它將該變量的內容作爲輸出中的js變量寫出來 - 就像你將文本寫入頁面一樣。如果你說'
<?php echo $ title; ?>
' - HTML沒有請求'title'變量,您正在將它寫入輸出的一部分。這裏完全一樣。當客戶端(瀏覽器)接收到頁面時,js變量被定義爲靜態字符串,而不是對PHP變量的調用。 – Adam