首先,让我先说一下我们知道在 PHP 中使用短标记语法的缺点/优点。这不是这个问题的目的。
有没有办法将包含短标记代码的文件“包含”到变量中,并让 PHP 实际解析代码?
include
/require
显然没有以可行的形式提供数据,并且输出缓冲不会解析短标记代码,因为它发生在运行时。
使用eval()
根本不是一种选择。
建议?
首先,让我先说一下我们知道在 PHP 中使用短标记语法的缺点/优点。这不是这个问题的目的。
有没有办法将包含短标记代码的文件“包含”到变量中,并让 PHP 实际解析代码?
include
/require
显然没有以可行的形式提供数据,并且输出缓冲不会解析短标记代码,因为它发生在运行时。
使用eval()
根本不是一种选择。
建议?
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,也许你只需要在你的代码中临时启用它。