var testvr = <?php echo 5;?>;
当我在我的javascript中使用它时,我得到一个“意外的令牌&lt;”错误就行了。我看过无数人设置这样的javascript变量的例子,所以我有点困惑。我见过有人这样做
var testvr = "<?php echo 5;?>";
但是它将代码作为字符串传递给变量。我真的只是想找到一种方法来简单地将一个javascript变量设置为来自php的东西,没什么特别的,它只是一个像5这样的数字。
答案 0 :(得分:2)
在我的javascript中使用它时,我在行上收到“意外的令牌
<
”错误。
这意味着在将文件传递给浏览器之前,您不会通过PHP解析器传递文件。
据推测,您将PHP放在.js
文件中。将该文件重命名为.php
或将服务器配置为使用PHP处理.js
文件。
不要忘记PHP将默认发送Content-Type: text/html
,因此请确保包含header("Content-Type: application/javascript");
。
答案 1 :(得分:1)
使用对象是安全的:
<?php
$vars = array('var1' => 'val1', 'var2' => 'val2', 'intvar' => 55);
?>
<script>
var myvars = <?php json_encode($vars);?>
console.log(myvars.var1);
console.log(myvars.var2);
console.log(myvars.intvar);
</script>
上面会将数字保存为数字,所有不安全的字符都会被转义。