var testvr = <?php echo 5;?>;
当在我的 javascript 中使用它时,我在行上收到“意外令牌 <”错误。我见过无数这样的人设置javascript变量的例子,所以我有点困惑。我见过一些人这样做
var testvr = "<?php echo 5;?>";
但这会将代码作为字符串传递给变量。我真的只是在寻找一种方法来简单地将 javascript 变量设置为来自 php 的东西,一点也不花哨,它只是一个诸如 5 之类的数字。
var testvr = <?php echo 5;?>;
当在我的 javascript 中使用它时,我在行上收到“意外令牌 <”错误。我见过无数这样的人设置javascript变量的例子,所以我有点困惑。我见过一些人这样做
var testvr = "<?php echo 5;?>";
但这会将代码作为字符串传递给变量。我真的只是在寻找一种方法来简单地将 javascript 变量设置为来自 php 的东西,一点也不花哨,它只是一个诸如 5 之类的数字。
当在我的 javascript 中使用它时,我得到一个“意外的令牌
<
”错误。
这意味着在将文件传递给浏览器之前,您不会通过 PHP 解析器传递文件。
大概您将 PHP 放在一个.js
文件中。将该文件重命名为.php
或配置您的服务器以.js
使用 PHP 处理您的文件。
不要忘记 PHP 将默认发送Content-Type: text/html
,因此请确保包含header("Content-Type: application/javascript");
.
使用对象是安全的:
<?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>
以上将数字保持为数字,所有不安全的字符都将被转义。