我们假设我有以下文件 - template.php
:
<?php $string = 'Hello World!'; ?>
<html>
<head>
<title>Test Page!</title>
</head>
<body>
<h1><?= $string; ?></h1>
<p>You should see something above this line</p>
</body>
</html>
我知道我可以使用file_get_contents()
将文件的内容作为字符串获取,然后我可以根据需要进行操作。但是,file_get_contents()
不执行PHP语句。
我已成功使用cURL来访问该文件的渲染版本,但它似乎相当缓慢而笨重,为页面的执行添加了相当多的时间 - 我想这是由于DNS查找正在执行。
那么,如何将template.php
的内容放入字符串中 - 同时在那里使用PHP?
答案 0 :(得分:41)
这应该这样做:
ob_start();
include('template.php');
$returned = ob_get_contents();
ob_end_clean();
答案 1 :(得分:3)
如果你不需要在 PHP中执行,你可以从命令行执行php脚本,并将其传递给文本文件,如下所示:
php -f phpFile.php > output.html