<分区>
在我的应用程序中,我严重依赖 JavaScript 来增强用户界面,但所有数据都来自数据库并由 PHP 处理。默认情况下,我使用“echo”语句“及时”替换所需的值,如下所示:
var myVariable = <?php echo $myVariableInPHP ?>
然而,这并没有让我觉得非常优雅,我担心此类代码的稳定性和可维护性。
我有其他选择吗?
对于服务器端,我使用的是 Symfony 1.4 PHP 框架。
谢谢,
<分区>
在我的应用程序中,我严重依赖 JavaScript 来增强用户界面,但所有数据都来自数据库并由 PHP 处理。默认情况下,我使用“echo”语句“及时”替换所需的值,如下所示:
var myVariable = <?php echo $myVariableInPHP ?>
然而,这并没有让我觉得非常优雅,我担心此类代码的稳定性和可维护性。
我有其他选择吗?
对于服务器端,我使用的是 Symfony 1.4 PHP 框架。
谢谢,
最佳答案
我最喜欢的方式是:
<?php
$var = array(
'prop1' => 'value1',
'prop2' => 'value2',
// ...
);
?>
<script type="text/javascript">
var varNameSpace = <?php echo json_encode($var); ?>;
alert( varNameSpace.prop1 ); // -> 'value1'
</script>
使用 json_encode()
确保传递给 Javascript 的值被转义并且格式正确。使用公共(public)变量容器还可以防止过度使用全局空间(窗口)。
关于php - 将参数从服务器端 PHP 传递到客户端 JavaScript 的最安全方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3613186/