// Return a copy of the array with falsy values removed public function compact($collection=null) { list($collection) = self::_wrapArgs(func_get_args(), 1); $collection = self::_collection($collection); $__ = new self; return self::_wrap($__->select($collection, function($val) { return (bool) $val; })); }
function($val) {
代码来自php underscore, 这个地方报错, 似乎不能做参数.
// Return a copy of the array with falsy values removed public function compact($collection=null) { list($collection) = self::_wrapArgs(func_get_args(), 1); $collection = self::_collection($collection); $__ = new self; return self::_wrap($__->select($collection, function($val) { return (bool) $val; })); }
function($val) {
代码来自php underscore, 这个地方报错, 似乎不能做参数.
function ($val) {
这种写法是lambda函数(匿名函数)的写法,以前经常出现在js等脚本语言中。但是从php 5.3开始支持这种匿名函数。所以你遇到的问题就是php版本不够造成的,升级到最新版本的php 5.3.x就可以解决这个问题。