php的闭包(Closure)也就是匿名函数。是PHP5.3引入的。php
闭包的语法很简单,须要注意的关键字就只有use,use意思是链接闭包和外界变量。html
1web 2面试 3websocket |
|
闭包的几个做用:this
1 减小foreach的循环的代码spa
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
|
这里若是咱们改造getTotal函数必然要使用到foreach
2 减小函数的参数
1 2 3 4 5 6 7 8 9 |
|
若是是使用平时的方法,咱们会把inner放到html函数参数中,这样无论是代码阅读仍是使用都不如使用闭包
3 解除递归函数
1 2 3 4 5 6 7 8 9 10 |
|
注意上题中的use使用了&,这里不使用&会出现错误n-1)是找不到function的(前面没有定义fib的类型)
因此想使用闭包解除循环函数的时候就须要使用
1 2 3 4 5 |
|
这样的形式
4 关于延迟绑定
若是你须要延迟绑定use里面的变量,你就须要使用引用,不然在定义的时候就会作一份拷贝放到use中
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
使用引用和不使用引用就表明了是调用时赋值,仍是申明时候赋值
上面是我整理给你们的PHP闭包 function() use()中的详细使用方法,但愿从此会对你们有帮助。
相关文章:
以上就是PHP闭包 function() use()中的详细使用方法的详细内容,更多请关注php中文网其它相关文章!