abstract:因为php只有全局作用域和函数作用域,不支持块级作用域时,循环和判断语句中的声明变量自由权就很大,即使在循环和判断结束后,变量仍能在外部的环境中执行。例如会出现:<?php for($i=0;$i<10;$i++){ ; } var_dump($i);//输出int(10)为了避免此种情况发生。可以1、不要使用重名的变量;2、只在函数中声明变量,通过闭包的方式访问。
因为php只有全局作用域和函数作用域,不支持块级作用域时,循环和判断语句中的声明变量自由权就很大,即使在循环和判断结束后,变量仍能在外部的环境中执行。例如会出现:
<?php for($i=0;$i<10;$i++){ ; } var_dump($i);//输出int(10)
为了避免此种情况发生。可以1、不要使用重名的变量;
2、只在函数中声明变量,通过闭包的方式访问。
Correcting teacher:天蓬老师Correction time:2019-02-22 16:50:19
Teacher's summary:不过,将块代码,放在一个自执行函数中, 也可以模拟出一个块级使用域