2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > php变量作用域分别的是 深入理解php变量作用域范围

php变量作用域分别的是 深入理解php变量作用域范围

时间:2022-06-13 16:39:37

相关推荐

php变量作用域分别的是 深入理解php变量作用域范围

php中变量的作用域是按照函数为界线划分的,函数外定义的所有变量称为全局变量。函数内定义的所有变量称为局部变量。

需要注意的是if else while等代码块不是函数,属于语言结构,在其中声明的变量作用域同上。即函数内为局部,函数外为全局。

一、变量作用范围的分类

PHP中定义的变量的作用范围分为三个层次。

超全局变量Superglobals 。所有代码区域内都可以访问。

全局变量。函数外可用,函数内不可用。

局部变量。函数外不可用,函数内可用。

二、超全局变量

在全部作用域中始终可用的内置变量,这意味着它们在一个脚本的全部作用域中都可用。在函数或方法中无需执行 global $variable; 就可以使用它们。

超全局变量:

$GLOBALS

$_SERVER

$_GET

$_POST

$_FILES

$_COOKIE

$_SESSION

$_REQUEST

$_ENV

三、全局变量

函数外定义的变量统称为全局变量,在函数内不可用。如果要使用需使用global关键字。

四、局部变量

函数内定义的变量为局部变量,只能在函数内使用,函数外面无法使用。

函数内的static静态变量,也是局部变量,在函数外部无法使用。

五、示例

$x = 100; //全局变量

if($x){

$y=200; //全局变量

}

function localVar(){

$z=300;//局部变量,函数外不可访问。

global $x; //绑定全局变量x

echo $x; //输出100

echo $y; //无输出,未定义变量

echo $z; //输出300

}

localVar();

函数内的global关键字,实际上是建立了一个到全局变量的引用。

global详解看这篇:

php引用赋值操作符到底是什么

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。