【发布时间】:2014-12-15 14:23:36
【问题描述】:
我正在使用最新版本的 PHP,在一个类中,并编写一个排序函数,其中包括以下内容:
public static function sort_alphabetically($data, $sortBy=null)
{
...
if($sortBy)
{
function sortBy($a, $b) use ($sortBy)
{
if ($a->$sortBy == $b->$sortBy){return 0;}
if ($a->$sortBy > $b->$sortBy){return 1;}
else{return -1;}
};
usort($data, "sortBy");
}
return $data;
}
但我一直在得到
解析错误:语法错误,意外“使用”(T_USE),期待“{”...
很难用谷歌搜索use 这个词并获得有用的结果,但我看到有人提到它不能在类或命名空间中使用。然而,PHP 文档正是这样做的——http://php.net/manual/en/functions.anonymous.php——所以我不确定互联网上那位的作者是否正确。
任何人都可以对此有所了解吗?我可以使用其他方法吗?
【问题讨论】:
-
如果一个函数有名字,它就不是匿名的
-
真的。我忽略了这一点,谢谢
-
.. 这是解析错误,不是异常。
-
是啊是啊...技术... ;)