计算1到10的和:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<?php function
f( $n ) {
$before_1
= 1;
$before_2
= 1;
for ( $i
= 3; $i
<= $n ;++ $i
) {
$item
= $before_1
+ $before_2 ;
$before_2
= $before_1 ;
$before_1
= $item ;
}
return
$item ;
} echo
f(10);
?> |
迭代的语法体现是循环
用递归来试下:
1
2
3
4
5
6
7
8
9
10
|
<?php function
f( $n ) {
if ( $n
== 1 || $n
== 2) {
return
1;
}
return
f( $n -1) + f( $n -2);
} echo
f(10);
?> |
输出结果同上~
匿名函数(没有名字的函数,定义时,不需要增加名字即可)的使用:
1
2
3
4
5
6
|
<?php $sayHello
= function
( $name ) {
echo
‘Hello, ‘ , $name ;
}; $sayHello ( ‘evilxr‘ );
?> |
匿名函数的use语法,use语法:是匿名函数生成的语法!use可以使得匿名函数,使用其匿名函数外部作用域的变量的语法
1
2
3
4
5
6
7
|
<?php $v1
= ‘evilxr‘ ;
$func
= function
() use ( $v1 ){
var_dump( $v1 );
}; $func ();
?> |