PHP 7 的 Closure::call() 有着更好的性能,作用:将一个 闭包函数动态 绑定到一个新的 对象实例 并调用执行该函数。 描述: public mixed Closure::call ( object $newthis [, mixed $... ] ) 暂时将闭包绑
PHP 7
的 Closure::call()
有着更好的性能,作用:将一个闭包函数动态
绑定到一个新的对象实例
并调用执行该函数。描述:
public mixed Closure::call ( object $newthis [, mixed $... ] )
暂时将闭包绑定到newthis
,并用任何给定的参数调用。
php7之前的示例:
<?php class A { private $x = 1; } // PHP 7 之前版本定义闭包函数代码 $getXCB = function() { return $this->x; }; // 闭包函数绑定到类 A 上 $getX = $getXCB->bindTo(new A, 'A'); echo $getX(); print(PHP_EOL);
php7之后的示例:
<?php class A { private $x = 1; } $getX = function() { return $this->x; }; echo $getX->call(new A); ?>