-5
我有一個名爲$usershours
的php變量,它包含一個數組,我想在Javascript代碼中回顯它。我怎麼做?在Javascript代碼中顯示PHP數組變量
我想這一點,但沒有奏效:
$usershours = "
data.addRow([ new Date(2012,4,1),50119]).+'<br>+'.
data.addRow([ new Date(2012,4,2),242575])";
<script type="text/javascript">
document.write($arrayholder);
</script>
我所要的輸出是這樣的:
data.addRow([ new Date(2012,4,1),50119])
data.addRow([ new Date(2012,4,2),242575])
PS - 我需要這個格式,因爲這是格式Google圖表API接受以正確呈現圖表。
PHP正在服務器上執行併發送瀏覽器HTML和JavaScript。你在哪裏期待這發生? – databyss
將它包裝在'
只需使用
var arrayholder = <?php json_encode($usershours);?>;
如果arrayholder
有輸出爲字符串(而不是代碼)來源
2012-08-22 02:11:52 Cranio
分號不需要我ñ只要你避免了一些模糊的語法陷阱。 –
1.和2.分別是無關和錯誤的。 – meagar
** @ Dan Grossman:**據我所知,只有表達式需要分號';(...)','; [...]和'; /.../',還有' 「嚴格使用」;'出於某種原因。 – elclanrs
一般建議:不要嘗試從PHP呈現有效的JavaScript。它最終會咬你,一些可替代的解決方案:在一個HTML元素嵌入數據,並通過JavaScript和Ajax提取它
話雖如此
是我如何做到這一點,當我確定與拍攝我自己在腳下
來源
2012-08-22 02:22:00
通過咬你我的意思是在你的JavaScript中出現一個意外的錯誤,由於你無法控制的某些配置。 –
爲什麼要將數據嵌入到HTML元素中,只需在js中回顯就可以了? – jeroen
這是一個強加給自己的非常武斷的規則,也與這個問題非常不相干。 – meagar
儘管用JS搞亂PHP並不是一個最佳的方法,但它也會讓你的代碼更加整潔。
讓我們假設你的數據來自一個陣列,以組成[從數據庫或文件獲取]:
通過
json_encode($data)
你會得到這樣的輸出:現在你知道如何將你的數據從一個PHP結構轉換成一個Javascript結構,這只是一個寫作問題:
當然,
data.addRow()
是在你的JS代碼中聲明的某個函數。來源
2012-08-22 02:30:04 moonwave99