This article describes the method of passing parameters and using external variables in PHP closure function. Share it with everyone for your reference, the details are as follows:
Write two methods in the Laravel controller, one is to create a closure function internally, and the other is to execute the passed closure function, test the writing method of the closure, use external variables, and pass parameters of the closure function . As follows:
//测试闭包传参及use使用外部变量 public function testClosure($t1, $t2) { $closure = function ($param1, $param2) use ($t1, $t2) { echo $param1.$param2.$t1.$t2; }; $this->execClosure('test.closure', $closure); } //执行闭包函数 protected function execClosure($name, Closure $closure) { echo 'Closure func name:'.$name; echo '<br>'; $closure('p1', 'p2'); }
Add routes in routes.php:
Copy code The code is as follows: Route::get('/test/closure/{t1}/{t2}',['uses'=>'TestController@testClosure'] );
Visit www.example.com/test/closure/hehe1/hehe2
Browser output:
Closure func name:test.closure p1p2hehe1hehe2
Reprinted from: Xiaotan Blog http://www.tantengvip.com/2016/03/php-closure-use/
Readers who are interested in more PHP-related content can check out the special topics of this site: "Summary of PHP office document operation skills (including word, excel, access, ppt)", "Summary of PHP date and time usage", "php-oriented "Introduction Tutorial on Object Programming", "Summary of PHP String Usage", "Introduction Tutorial on PHP MySQL Database Operation" and "Summary of Common PHP Database Operation Skills"
I hope this article will be helpful to everyone in PHP programming.