php閉包就是要暫時建立一個沒有名稱的函數,常常當作回呼函數來用。通俗的說就是:子函數可以使用父函數中的局部變量,這種行為叫做閉包。
提到閉包就不得不想起匿名函數,也叫閉包函數(closures),貌似PHP閉包實作主要就是靠它。宣告一個匿名函數是這樣:
程式碼如下:(推薦學習:PHP影片教學)
$func = function() { }; //带结束符
可以看到,匿名函數因為沒有名字,如果要使用它,需要將其傳回給一個變數。匿名函數也像普通函數一樣可以宣告參數,呼叫方法也相同:
程式碼如下:
$func = function( $param ) { echo $param; }; $func( 'some string' ); //输出: //some string
實作閉包
將匿名函數在普通函數中當做參數傳入,也可以被傳回。這就實作了一個簡單的閉包。
//在函数里定义一个匿名函数,并且调用它 function printStr() { $func = function( $str ) { echo $str; }; $func( 'some string' ); } printStr(); 输出: some string
以上是php閉包是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!