中调用一个函数来清除,我不要求如何从PHP创建JS变量或函数,而是询问正确的方法或最佳实践这样做。如何正确创建JavaScript变量并从PHP
我有一些PHP变量需要在JavaScript中用于稍后进行一些修改,我还需要在初始化这些变量时运行JS函数。
最明显的方式做到这一点是增加一个<script>
标签,并在那里进入我的JS的信息,具体如下:
?>
<script>
$(document).ready(function() {
var my_js_string = <?php my_php_string ?>
my_js_function();
});
</script>
<?php
这样,我有一个全球性的JS var和功能运行在文件。准备。
但是,这感觉不对。如果我需要从PHP创建多个JS变量,代码将随着脚本和document.ready(s)到处臃肿。即使不需要document.ready,使用这种方法初始化许多JS全局变量也会使代码难以阅读和调试。拥有JS全局变量也是不好的做法。另外如果它是敏感信息呢?你不希望它像任何人都可以访问的全球一样浮动。
任何关于更好方法学的建议?
我想到的一个选择是创建事件,用信息填充事件,然后在适当的.js文件中检索它,创建局部变量,但这可能导致相同的问题,许多不必要的事件浮动周围。
我认为的另一种方式是创建包含数据的HTML元素,无论是纯文本还是data-
属性或任何其他方法。这在的一些情况下是一个很好的做法,但我不认为这是当你有很多变量或变量包含你不想在DOM中显示的敏感信息时的最佳方式。
如果这是一个重复的答案,或者你可以指导我解决这个问题的相关文章,我将不胜感激,因为我不知道如何正确搜索这个,并找不到好的资源。
通过AJAX获取'敏感信息'。 – JustOnUnderMillions
但是'可以被任何人访问'是javascript的工作原理。通过浏览器中的'F12'开发者控制台打开,你可以看到并访问你找到的东西(并且操纵/改变它[也是代码本身])。请记住:切勿信任用户 – JustOnUnderMillions
的确如此。 AJAX,然后删除一次使用的信息。我猜AJAX是要走的路,谢谢@JustOnUnderMillions –