我在这里看到了一些关于使用包含变量的问题,如下所示:
test.inc.php:
<?php
$variable = "value";
?>
file.php:
<?php
$variable = "something";
include "test.inc.php";
echo $variable; // Should be "value"
现在我试图反过来做,但是没有成功。这就是它的样子:
template.html.php:
<html><body>Here is the value from the inherited scope: <?= $variable ?></body></html>
file.php:
<?php
$variable = "it's a'me, a'mario!";
include "template.html.php";
我希望输出为:
<html><body>Here is the value from the inherited scope: it's a'me, a'mario!</body></html>
但相反,它是:
<html><body>Here is the value from the inherited scope: </body></html>
有没有理智的方法将$变量注入包含文件?我正在编写一个基于之前由另一个人编写的代码的伪模板引擎,我不得不走这条路。
我考虑过使用eval,但我需要捕获所有输出,而且我不确定我是否可以根据所包含文件的实际外观使用eval来做到这一点。
那么我如何将变量注入包含文件呢?