使用自执行函数来模拟一个块级作用域

Original 2019-03-29 15:31:16 208
abstract:<?php // 使用自执行函数来模拟一个块级作用域 //(例如for循环结束后, 后面代码不能再访问循环变量) function block_fun(){ $fun = function(){ $arr = [11,19,55,10,70,8,44,60]; for($i=0;$i < coun
<?php
// 使用自执行函数来模拟一个块级作用域
//(例如for循环结束后, 后面代码不能再访问循环变量)
function block_fun(){
$fun = function(){
$arr = [11,19,55,10,70,8,44,60];
for($i=0;$i < count($arr);$i++){
for($j=$i+1;$j < count($arr);$j++){
if($arr[$i] > $arr[$j]){
$temp = $arr[$i];
$arr[$i] = $arr[$j];
$arr[$j] = $temp;
}
}
}
var_dump($arr);
};
$fun();
echo isset($temp)? '访问作用域内的循环变量成功' : '访问作用域内的循环变量失败'.'<hr>';
}
block_fun();


Correcting teacher:天蓬老师Correction time:2019-03-30 10:44:49
Teacher's summary:与大多数脚本语言一样, php也不提供块作用域, 这不能算是bug, 只是语言自身的特点, 不过, 难不倒聪明的你

Release Notes

Popular Entries