首先,感谢您阅读我的第一个stackoverflow问题!!!
我有以下代码:
eval('return ('.$statement.');')
我正在创建一个用于学习目的的模板引擎,所以,我需要代码来对我的观点进行一些条件操作。
此代码的目标是执行语句并返回逻辑结果。
假设$statement = '1 == 1';
返回true,
但是,如果我放$statement = 'cookie()->has('name');'
,则会出现以下错误:
解析错误:语法错误,意外'&'在 /var/www/html/exemplo.com/core/Instead/src/TemplateEngines/TemplateEngine.php(96) :第1行的eval()代码
请注意,cookie函数已存在且可全局访问,并返回1,仅为1。
任何想法?解决方案?再次感谢。
答案 0 :(得分:0)
这很奇怪,但由于某种原因,$tatement = filter_var($statement, FILTER_SANITIZE_STRING)
导致错误,在将此函数替换为strip_tags后,错误消失了。