我有这个:
ob_start(); ?> <div class="" id="loading"> <?php echo file_get_contents($page["texto"]) ?> </div> <?php $content = ob_get_clean();
但是我希望将该模板html放在一个单独的文件中,就像:
$content = file_get_contents('cms/template.php');
现在这不会起作用,因为它内部有php标签,当检索到它所获得的字符串时
如何在不使用脏黑客的情况下实现这一目标:
$pre = file_get_contents('part1');
$var = file_get_contents($page["texto"]);
$post = file_get_contents('part2');
并添加所有这些......
答案 0 :(得分:3)
它仍然是黑客,但除非你使用像Twig这样的模板系统,否则别无选择:
ob_start();
include 'cms/template.php';
$content = ob_get_clean();
echo $content;
ob_start启用输出缓冲,因此不会将任何内容发送到浏览器。然后我们包含将正常执行PHP的文件。然后我们使用ob_get_clean来获取输出缓冲区的内容(这是您的模板文件)。并禁用输出缓冲区,丢弃它的内容,因为我们有$content
中的内容。