当我想要更改此功能时,我遇到了phpstorm的错误
$callback = create_function('$matches', 'return strtoupper($matches[1]);');
通过
callback = function('$matches', 'return strtoupper($matches[1]);');
如果这是一个错误,如何解决。
谢谢。
答案 0 :(得分:2)
您不应该使用create_function()
。 create_function()
使用eval()
。 eval()
是邪恶的。
更严重的是,eval()
(以及create_function()
)存在很大的安全问题。如果您使用的是PHP 5.3或更高版本,则应使用本机匿名函数,在这种情况下:
$callback = function($matches) {
return strtoupper($matches[1]);
}
供参考:Anonymous functions。
请注意,从PHP 7.2开始,create_function
已被弃用。