关于PHP变量的作用域
据说,即使在PHP的控制结构(如if等)中,变量的范围(变量可以使用的区域)也不会受到限制。
如果想要缩小作用域,可以在函数或方法中进行定义。
在JavaScript中,这方面的情况也类似。
<?php
$global = 'global';
if (! empty($global)) {
// $globalはどこからでもアクセスできる
$global = 'globaltest!!';
}
function local () {
// 関数やメソッド内で定義するとこのブロックの外では使えない。
$local = 'local';
}
// 使える globaltest!!
echo $global;
// Notice: Undefined variable:
echo $local;
大约一年前我不明白本地的好处,但现在我明白了。这是因为在我完全不记得定义变量的情况下,会出现错误。
我读了《完美PHP》,感受颇多,试着进行输出。
参考文献
《完全PHP》
作者: 小川雄大, 柄沢聡太郎, 橋口誠
出版社: 技術評論社 (2010/11/12)