來源:不言 發(fā)布時間:2019-01-10 10:46:07 閱讀量:1098
匿名函數(shù)也稱為閉包,可以在不指定名稱的情況下調(diào)用此函數(shù),本篇文章我們就來介紹關(guān)于php匿名函數(shù)的使用方法。
注意:php匿名函數(shù)與php5.3或更高版本兼容,也就是說,平滑php匿名函數(shù)不能在早期版本中使用。
描述如下。
1 2 3 |
|
通常function后有函數(shù)名,但匿名函數(shù)的情況是沒有的,和普通的函數(shù)一樣可以傳遞參數(shù)。
接下來,我們就來看匿名函數(shù)的使用
我們先來看一下使用匿名函數(shù)的優(yōu)點
防止函數(shù)名的不一致
進行開發(fā)的話,開發(fā)的規(guī)模越大函數(shù)的數(shù)量就會越多。
很多小功能函數(shù)的命名可能會讓代碼變得很混亂。
另外,考慮與不重復(fù)的函數(shù)名和功能有關(guān)的名字也很難。
由于匿名函數(shù)僅限于某個場合使用,因此就無需為其命名。
指定回調(diào)函數(shù)
使用匿名函數(shù),你還可以使用回調(diào)函數(shù)。
在某個函數(shù)的處理中或處理結(jié)束后調(diào)用另一個函數(shù)的時候,預(yù)先交另一個函數(shù)。
此時,傳遞給函數(shù)的另一個函數(shù)稱為回調(diào)函數(shù)。
下面我們就來看一下php匿名函數(shù)的具體用法
將值傳遞給匿名函數(shù)的參數(shù)
1 2 3 4 5 6 7 |
|
在[程序1]中,為變量$course分配給匿名函數(shù),僅僅通過向變量$course分配匿名函數(shù)但并不會執(zhí)行它。
在[程序2]中執(zhí)行分配給$course的匿名函數(shù);執(zhí)行時,將值“php中文網(wǎng)”這個值傳遞給匿名函數(shù);在匿名函數(shù)中,值“php中文網(wǎng)”會在$ test_val中。
執(zhí)行結(jié)果是:php中文網(wǎng)VIP課程
傳遞的值被執(zhí)行并顯示在匿名函數(shù)中。
將函數(shù)傳遞給匿名函數(shù)的參數(shù)
下面是一個示例代碼,它將函數(shù)(回調(diào)函數(shù))作為匿名函數(shù)的參數(shù)傳遞。
1 2 3 4 5 6 7 8 9 10 11 |
|