PHP Closure::call()
PHP 7의 Closure::call()은 클로저 함수를 새 객체 인스턴스에 동적으로 바인딩하고 함수를 호출하여 성능이 더 좋습니다.
Instance
Instance
<?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); // PHP 7+ 代码 $getX = function() { return $this->x; }; echo $getX->call(new A); ?>
위 프로그램 실행 출력 결과는 다음과 같습니다.
1
1
1