<div style="height:30px;line-height:30px;background:#f1f1f1;font-weight:bold;font-size:14px;padding:5px 10px;margin-bottom:10px;border-bottom:1px solid #ccc">变量>变量范围</div>
变量的范围即它定义的上下文背景(也就是它的生效范围)。大部分的 PHP 变量只有一个单独的范围。这个单独的范围跨度同样包含了 include 和 require 引入的文件。
***
**global** 函数内,内部变量是外部变量的同名引用。也就是别名的引用,而非外部变量本身。
**$GLOBALS['var']** 是外部的全局变量本身。
**静态变量static** 静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失。静态变量也经常用在递归中。静态变量可以直接赋值,但是不能把表达式赋值给静态变量会报错。`static $int = 1+2;`
~~~
<?php
function test()
{
static $a = 0;
echo $a;
$a++;
}
//每次调用该函数,a的值都会在上次的基础上增加
?>
~~~
---
注意:
1.在函数之外使用 global 关键字不算错。可以用于在一个函数之内包含文件时。
2.静态声明是在编译时解析的。
<div style="background:#f0f0f0;text-align:center;font-size:12px;padding:20px">
© 2017-版权 杜二红 如要转载,请注明出处!
</div>