Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我的 CMS 中有薮块。一些块包含 PHP 代码和一些 HTML 代码。如果我在代码是 html 代码时使用 eval 显示代码,我会收到此错误:
解析错误:语法错误,/Applications/XAMPP/xamppfiles/htdocs/mob/main_content.php(17) 中出现意外的“<”:第 1 行的 eval() 代码
我需要在代码之前添加printor 。echo
print
echo
如果代码需要,我可以构建一个现在可以使用的函数吗eval()?echo()
eval()
echo()
要回答您的实际问题,您应该使用require()而不是试图弄清楚您是否应该eval()或echo(). 但是,您永远不应该使用eval(). 几乎为零的情况eval()是做某事的唯一方法。您应该使用允许您将 PHP 代码块插入到位并使用它的模板引擎。
require()
我个人更喜欢PHPTAL,但还有很多其他的,比如Smarty、Twig等等(这些是我通过快速谷歌搜索找到的前几个)。
没有自动的方法可以知道是否需要 eval()某些东西。仅仅因为它看起来像 PHP 代码并不意味着它打算被评估。
如果您需要继续使用这种方法,我建议两种可能性:
使用数据库中的不同列来存储文字文本和动态 PHP;当数据来自您将使用的 PHP 列时eval()。
要求管理员在其输入中标记动态 PHP,例如[php]...[/php]. 删除标记,然后调用eval().
[php]...[/php]