我收到错误未定义函数。
这是代码:
$myvar = "@file_get_contents";
eval($myvar("http://someurlupdatehere.com"));
The error I get is:
<b>Fatal error</b>: Call to undefined function @file_get_contents() ..
@file_get_contents()
不是有效的 PHP 函数。您可以删除抑制运算符以使其工作:
$myvar = "file_get_contents";
如果您仍需要使用抑制运算符,请执行以下操作:
eval('@' . $myvar("http://someurlupdatehere.com"));
甚至离开抑制运算符并将整行作为字符串传递:
$myvar = "@file_get_contents";
eval("$myvar('http://someurlupdatehere.com');");
请注意,使用抑制运算符eval
通常是一个坏主意。
你想做什么对我来说真的很奇怪。我倾向于说“不要使用 eval,不要那样做!” ;)
无论如何,这是正确的语法:
$myvar = "@file_get_contents";
eval("$myvar('http://someurlupdatehere.com');");
或者,如果您需要file_get_contents()
变量中的返回值(很可能,请使用:
$myvar = "@file_get_contents";
eval("\$file = $myvar('http://someurlupdatehere.com');");
echo $file;
<?php
$myvar = "file_get_contents";
eval(@$myvar("http://someurlupdatehere.com"));
?>
也可以。抑制错误。