使用自执行函数来模拟一个块级作用域(例如for循环结束后, 后面代码不能再访问循环变量)

Original 2019-04-10 10:08:37 177
abstract:<?php $func = function(){     $arr = [23,112,67,12,43,64,232];     for($i=0;$i < count($arr);$i++){     
<?php
$func = function(){
    $arr = [23,112,67,12,43,64,232];
    for($i=0;$i < count($arr);$i++){
        for($j=$i+1;$j < count($arr);$j++){
            if($arr[$i] > $arr[$j]){
                $storer = $arr[$i];
                $arr[$i] = $arr[$j];
                $arr[$j] = $storer;
            }
        }
    }
};
$func();
echo isset($storer)? '能访问作用域内的循环变量' : '不能访问作用域内的循环变量'.'<hr>';


Correcting teacher:天蓬老师Correction time:2019-04-10 10:34:44
Teacher's summary:你这个案例, 举的比较有意思, 我记下了

Release Notes

Popular Entries