本文實例講述了PHP閉包函數傳參及使用外部變量的方法。分享給大家供大家參考,具體如下:
在Laravel控制器寫兩個方法,一個是在內部創建一個閉包函數,一個是執行傳過來的閉包函數,測試閉包的寫法,use使用外部變量,及閉包函數的傳參。如下:
//測試閉包傳參及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'); }
在routes.php添加路由:
復制代碼 代碼如下:Route::get('/test/closure/{t1}/{t2}',['uses'=>'TestController@testClosure']);
訪問www.example.com/test/closure/hehe1/hehe2
浏覽器輸出結果:
Closure func name:test.closure p1p2hehe1hehe2
轉自:小談博客 http://www.tantengvip.com/2016/03/php-closure-use/
更多關於PHP相關內容感興趣的讀者可查看本站專題:《php操作office文檔技巧總結(包括word,excel,access,ppt)》、《php日期與時間用法總結》、《php面向對象程序設計入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。