在 PHP 5.4 中使用匿名函数会引发解析错误。该代码在除一台之外的所有服务器上都可以正常工作。它在 CentOS 上使用 PHP 5.4.38。
这是一个简短的错误副本:
Parse error: syntax error, unexpected T_FUNCTION, expecting ‘)’ in path/to/file.php on line 33
下面是函数的样子:
31. public static function list_to_array($list, $delimiter = ","){
32. $array = explode($delimiter, trim($list));
33. $array = array_map(function($string) {
34. return htmlspecialchars(trim($string), ENT_QUOTES);
35. }, $array);
36. return $array;
37 }
如果您查看这段代码,一切似乎都很好,并且在 PHP 5.3+ 中应该可以正常工作,但由于某种原因它没有。我在谷歌上搜索了几天,找不到解决方案。
有什么我错过的吗。可能是服务器禁用了匿名功能或类似的东西?