意外的T_FUNCTION错误

时间:2015-09-21 04:18:39

标签: php error-handling

我正在使用此功能

    usort($arr, function($a, $b) use ($str) {return (strpos($a, $str) - strpos($b, $str));});

对数组$arr进行排序。此功能在localhost上正常工作,但是当我在线上传我的网站时出现此错误

  

解析错误:语法错误,意外T_FUNCTION

有谁知道为什么会这样?

1 个答案:

答案 0 :(得分:1)

好像你的主机上的PHP版本是< 5.3.0 并且它不支持匿名函数

http://php.net/manual/en/functions.anonymous.php

你可以试试这个

function cmp($a, $b, $str) {
    return (strpos($a, $str) - strpos($b, $str));
}

usort($arr, create_function('$a, $b', 'return cmp($a, $b, "' . $str . '");'));

或在服务器上升级你的php。