如何在JavaScript或jQuery中访问PHP变量,而不是<?php回声$variable?>

2022-08-30 09:29:18

如何在 JavaScript 或 jQuery 中访问 PHP 变量?我必须写

<?php echo $variable1 ?>
<?php echo $variable2 ?>
<?php echo $variable3 ?>
...
<?php echo $variablen ?>

我知道我可以在cookie中存储一些变量,并通过cookie访问这些值,但是cookie中的值是相对稳定的值。而且,有一个限制,你不能在cookie中存储很多值,而且方法也不是那么方便。有没有更好的方法来做到这一点?


答案 1

您的示例显示了将 PHP 变量传递给 JavaScript 的最简单方法。您还可以将json_encode用于更复杂的内容,例如数组:

<?php
    $simple = 'simple string';
    $complex = array('more', 'complex', 'object', array('foo', 'bar'));
?>
<script type="text/javascript">
    var simple = '<?php echo $simple; ?>';
    var complex = <?php echo json_encode($complex); ?>;
</script>

除此之外,如果你真的想在PHP和JavaScript之间“交互”,你应该使用Ajax。

为此使用cookie是一种非常不安全和不可靠的方式,因为它们存储在客户端,因此可以进行任何操作,甚至不会被接受/保存。不要将它们用于这种类型的交互。jQuery.ajax是一个很好的开始恕我直言。


答案 2

如果 AJAX 不是一个选项,则可以使用嵌套数据结构来简化。

<?php
$var = array(
    'qwe' => 'asd',
    'asd' => array(
        1 => 2,
        3 => 4,
    ),
    'zxc' => 0,
);
?>
<script>var data = <?php echo json_encode($var); ?>;</script>