0

我有一个包含 HTML 的字符串,但其中也包含 PHP 标记 ( <?php .. ?>)。我想让编译器将其呈现为纯 HTML,就好像它只是在 PHP 文件中一样。

我知道我可以通过执行以下操作来处理文件:

ob_start();
include 'my_file.php';
return ob_get_clean();

我真正想做的是如下所示:

$html = '<strong>1 + 1</strong> = <?php echo (1+1); ?>';
ob_start();
echo $html;
return ob_get_clean(); // should return '<strong>1 + 1</strong> = 2'

除了解析字符串和执行评估或将字符串临时保存为文件;动态生成字符串时,有什么方法可以在 PHP 中执行此操作?假设我没有特权访问,所以我不能修改我的 php.ini。

4

1 回答 1

1
$html = '<strong>1 + 1</strong> = <?php echo (1+1); ?>';
eval("?> $html <?php");

http://php.net/manual/en/function.eval.php

"eval — 将字符串评估为 PHP 代码"

于 2012-09-09T21:16:31.857 回答