首页 > 代码库 > PHP迭代

PHP迭代

计算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();
?>