将变量注入php包括

时间:2014-08-03 02:36:06

标签: php include scope inject

我在这里看到了一些关于使用包含变量的问题,如下所示:

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来做到这一点。

那么我如何将变量注入包含文件呢?

0 个答案:

没有答案