1

首先,让我先说一下我们知道在 PHP 中使用短标记语法的缺点/优点。这不是这个问题的目的。

有没有办法将包含短标记代码的文件“包含”到变量中,并让 PHP 实际解析代码?

include/require显然没有以可行的形式提供数据,并且输出缓冲不会解析短标记代码,因为它发生在运行时。

使用eval()根本不是一种选择。

建议?

4

1 回答 1

2
ob_start();
$ini_sot = ini_get('short_open_tag');
ini_set('short_open_tag', 1);
include('file_with_short_tags.php');
ini_set('short_open_tag', $ini_sot);
$variable = ob_get_contents();
ob_end_clean();

我不确定您在关于输出缓冲如何不合适的问题中是什么意思,但无论如何我都使用了它。我假设你的问题是你的平台上没有启用 short_open_tags,也许你只需要在你的代码中临时启用它。

于 2010-05-03T15:22:51.113 回答