变量作用域
PHP的变量按照作用域有四种类型:
本地变量在一个函数内定义的变量为本地变量,此类变量只在变量所属的函数内有效。即在函数之外,PHP会把与之重名的变量视为新的变量。
- <?php
-
function func()
-
{
-
$var="李四";
-
echo "我是".$var;
-
}
-
$var="张三";
-
echo "我是".$var;
-
func();
-
?>
输出为:
我是张三我是李四
函数参数
函数退出后不在起作用。
全局变量
- $somevar = 15; //全局变量
-
function addit() {
-
GLOBAL $somevar;
-
$somevar++;
-
echo "Somevar is $somevar";
-
}
-
addit();
不能直接这样定义:GLOBAL $somevar=15;
GLOBAL必须放在一个已经存在的全局变量前面,这样声明的变量才是使用的全局变量。
在addit函数当中也可以这样访问全局变量: $GLOBALS["somevar"]++;
也就是说程序当中的全局变量会放到一个叫GLOBALS的数组当中。
静态变量
函数调用完之后静态变量不会被销毁
- function keep_track() {
-
STATIC $count = 0;
-
$count++;
-
echo $count;
-
echo "
";
-
}
-
keep_track();
-
keep_track();
-
keep_track();
程序输出:
1
2
3
阅读(799) | 评论(0) | 转发(0) |