Javascript 无法使用其他文件中定义的php变量
我有两个3个php文件,一个定义一个常量,另一个包含html标记并包含一个php文件,其中包含js内容。第三个是呈现js内容的php文件。代码如下所示 第一个名为“config.php”的文件: 我唯一的问题是,我无法使用Javascript 无法使用其他文件中定义的php变量,javascript,php,require,script,Javascript,Php,Require,Script,我有两个3个php文件,一个定义一个常量,另一个包含html标记并包含一个php文件,其中包含js内容。第三个是呈现js内容的php文件。代码如下所示 第一个名为“config.php”的文件: 我唯一的问题是,我无法使用访问所需或包含的页面中的变量,浏览器将发出一个新请求,直接加载script.php。由于PHP是无状态的,因此该请求不会在与main.PHP中进行的任何处理相同的上下文中处理 如果要在script.php中使用config.php中定义的变量/常量,必须将其加载到其中: <
访问所需或包含的页面中的变量,浏览器将发出一个新请求,直接加载script.php
。由于PHP是无状态的,因此该请求不会在与main.PHP
中进行的任何处理相同的上下文中处理
如果要在script.php
中使用config.php
中定义的变量/常量,必须将其加载到其中:
<?php require_once('config.php'); ?>
alert("<?php echo TESTVAR; ?>");
通过这种方式,PHP在与
main.PHP
相同的上下文中加载script.PHP
文件,并且在其中定义的所有常量和变量将(应该)可供输出Javascript的代码使用。script.PHP
由浏览器自行加载。如果您想使用在config.php
中定义的常量,您还需要从那里获取config.php。您已经接近自己计算它了。检查加载script.php
的点/请求。提示:不是在与main.php
.dammit相同的请求中,我真傻。没有看到它,因为实际的项目是一个更大的框架,但当它被简化时,确实会有帮助,但非常感谢。你想写一个正确的答案,这样我就可以设置为正确的答案,还是想让我写一个,以备将来的帮助?@jaafarNasrallah我肯定这是以前提过的,所以它可能会被标记为一个副本,尽管我目前找不到正确的答案。但就我而言,这不是一个“愚蠢”的问题。特别是因为它是一个更大框架的一部分,所以很容易忽略这样的事情。@rickdenhaan我对stackoverflow并不陌生,在发布之前我已经看过了。所以谢谢
<?php
require_once ('config.php');
?>
<!doctype html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<script type="text/javascript" src="script.php"></script>
</body>
</html>
alert(<?php echo TESTVAR ?>);
<b>Notice</b>: Use of undefined constant TESTVAR - assumed 'TESTVAR' in <b>C:\xampp\htdocs\trials\testphpinjs\script.php</b> on line <b>2</b><br />
TESTVAR);
alert(<?php echo '\'testing'. 'php' . 'echo\'' ?>);
alert('testingphpecho');
<?php require_once('config.php'); ?>
alert("<?php echo TESTVAR; ?>");
<?php
require_once ('config.php');
?>
<!doctype html>
<html lang="en">
<head>
<title>Document</title>
</head>
<body>
<script type="text/javascript">
<?php include('script.php'); ?>
</script>
</body>
</html>