代码来自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) {


精慕HU
浏览 66回答 1
1回答

翻翻过去那场雪

function ($val) {这种写法是lambda函数(匿名函数)的写法,以前经常出现在js等脚本语言中。但是从php 5.3开始支持这种匿名函数。所以你遇到的问题就是php版本不够造成的,升级到最新版本的php 5.3.x就可以解决这个问题。
打开App,查看更多内容
随时随地看视频慕课网APP