通过Variable将内容插入到Template中

时间:2017-09-13 15:19:33

标签: php

我想将index.php页面用作我所有其他页面的模板。所以我用下面的代码打印出来。

echo file_get_contents("index.php");

我已将这段代码添加到模板(index.php)中,我想在其中显示内容。无论哪个页面都在。

<?php
echo $index_content;
?>

所以当我使用

echo file_get_contents("index.php");

获取我的页面模板,例如users.php。在users.php文件中,我想使用下面的代码

$index_content = echo "string";

然后打印我添加此变量的页面内容

<?php
echo $index_content;
?>

我的问题是当我说$ index_contents = echo(&#34; string&#34;);

它没有打印任何东西。到我的模板上。或者它打印出来的东西,但是在模板的结尾或开头。不是我插入变量的地方。为什么它不会反映出我已经插入变量的东西。

2 个答案:

答案 0 :(得分:0)

您正在存储&#34; echo&#34;的返回值。在$ index_content中,这是空的。 在将字符串分配给变量时,只需省略echo。

另一个问题是,使用file_get_contents你不会评估回显$ index_content的php表达式。

相反,您应该在users.php中使用include(&#39; index.php&#39;),并在此之前设置变量$ index_contents。

答案 1 :(得分:0)

file_get_contents()为您提供文件来源。 如果我说得对,你想改用include。也不要在变量中回显,而是分配值并在模板中回显它。

users.php:

$content = 'what ever';
include 'template.php';

other.php:

$content = 'other page';
include 'template.php';

的template.php:

echo $content

如果你调用users.php输出将是“什么都有”。如果你调用other.php输出将是“其他页面”。