【发布时间】:2012-02-21 18:10:15
【问题描述】:
为了在我的页面中包含原始 JavaScript 文件,我最终使用了:
function include_js($jsfile, $basepath = JSPATH){
echo '<script type="text/javascript">';
include($basepath . $jsfile);
echo '</script>';
}
工作正常,这些 JS 文件中的 PHP 代码仍然可以正常执行,这里没有问题。 但这是我之前使用的一些伪代码:
<script>
var hello = '<?php echo $id; ?>';
</script>
所以,问题出在:
- 以前,在我的 JavaScript 文件中使用的 PHP 代码是在与页面相同的上下文中执行的。
- 现在,它在
include_js()函数的上下文中执行。
因此,我无法再访问我的页面的任何变量。我可以用global $id; 修复它,但那是伪代码。
实际上,我不知道我需要访问哪些变量。
知道如何解决这个问题吗?如果您有比我在include_js() 内部实际所做的更好的解决方案来实现相同的目标而没有我所说的问题,那将不胜感激!
【问题讨论】:
标签: php variables scope global-variables