我有一个eval的小问题。eval()函数在PHP不工作
这里是我的代码:
$postbit = $template->output('posts_list_index'); // output string: $postslist it's ok
eval('echo $postbit;'); // output string: $postslist (?)
谢谢:)
我有一个eval的小问题。eval()函数在PHP不工作
这里是我的代码:
$postbit = $template->output('posts_list_index'); // output string: $postslist it's ok
eval('echo $postbit;'); // output string: $postslist (?)
谢谢:)
我想在eval()
功能,您可以能够与值替换字符串。请参阅http://in3.php.net/eval。
,并为您的解决方案是:
eval("$postbit = ".$template->output('posts_list_index'."); ");
echo $postbit ;
试试这个..我不知道这件事。 Eval需要你逃脱你的$:
eval('echo \ $ postbit;');
请编辑您的代码块 –
Javadewd's Answer是正确的。我更喜欢使用双引号而不是单引号。当它们出现在单引号的字符串PHP Manual状态
不像双引号和定界符语法,变量和转义特殊字符序列不会被扩大。
'eval()'之外'echo $ postbit;'产生了什么?我不明白你为什么在这里使用'eval()'。 –
即时通讯使用eval制作插件引擎和模板引擎。 这是echo $ postbit的结果:'$ postslist' – hegbl
@TimPost:术语“postbit”让我怀疑这可能与MyBB论坛软件有关(它使用该术语来指代围绕帖子的小部件,比如“回复”按钮)。我记得,它的模板引擎确实有这样的功能。 – duskwuff