您好,登錄后才能下訂單哦!
這篇文章主要介紹PHP中閉包的案例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
什么是閉包?閉包就是能夠讀取其他函數內部變量的函數。例如在javascript中,只有函數內部的子函數才能讀取局部變量,所以閉包可以理解成“定義在一個函數內部的函數“。在本質上,閉包是將函數內部和函數外部連接起來的橋梁,本文著重介紹php中的閉包。
1、閉包函數也叫匿名函數,一個沒有指定名稱的函數,一般會用在回調部分
2、閉包作為回調的基本使用,echo preg_replace_callback('~-([a-z])~', function ($match) {
return strtoupper($match[1]);
}, 'hello-world');
第三個參數是要匹配的目標字符串,第二個參數是一個匿名函數,當preg_replace_callback執行的時候,會回調匿 名函數,并且把匹配到的結果,作為匿名函數的參數傳遞進
3.閉包函數變量賦值的使用$greet = function($name)
{ printf("Hello %s\r\n", $name);
};$greet('World');
閉包函數賦值給了一個變量,這個變量直接跟()小括號就是執行這個函數,小括號里面的參數會傳遞到閉包函數里面去
4.閉包函數從父作用域繼承變量的使用$message = 'hello';$example = function () use ($message) { var_dump($message);
};$example();
使用use關鍵字把函數外面的父作用域的變量傳遞到了函數里面5.閉包函數變量賦值+()執行函數傳遞參數+use()關鍵字 傳遞父作用域變量$message="taoshihan";$example = function ($arg) use ($message) { var_dump($arg . ' ' . $message);
};$example("hello"); //輸出string(15) "hello taoshihan"
以上是PHP中閉包的案例分析的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。