小编带你学变量之php中的$GLOBALS
这次我们不再学习PHP中的定界符,本篇文章开始介绍超级全局变量,有需要的小伙伴可以参考参考,希望大家越来越熟悉php啦。
不过在介绍$GLOBALS
之前让我们先看看什么叫超级全局变量
。
全局变量是编程术语之一,它来源于变量的划分。变量分为局部变量和全局变量,局部变量也可以称为内部变量。由对象或函数创建的变量通常是局部变量,只能在内部引用,而不能由其他对象或函数引用。
全局变量可以由对象函数或此程序中的任何位置创建。此程序的所有对象或函数都可以引用全局变量。当一个局部变量被其他对象引用时,它将是一个空值。全局变量不会发生这种情况。
全局变量是在函数外部定义的变量。不能直接在函数中使用。因为它的作用域不会进入函数内部。而PHP预定义的超级全局变量,在脚本的所有范围内都可用。可以在函数和类中使用它,而无需特殊说明。
知道超级全局变量是什么之后,我们开始正题,去看看$GLOBALS。
首先看看一个小例子。
?php $x = 75; $y = 25; function addition() { $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y']; } addition(); echo $z; ?>
结果是
100
我们观察一下例子,这个z的结果就是x+y,但是他没有想像平常的四则运算那么写,而是“$GLOBALS['x'] + $GLOBALS['y']
”,这代表什么意思呢?
其实$GLOBALS是包含所有变量的全局组合数组,变量的名称就是数组的键,并且我们可以在PHP脚本的所有范围内访问它。只要是出现过的全局变量,就可以通过$GLOBALS这个数组取得。
PHP生命周期中,定义在函数体外部的所谓全局变量,函数内部是不能直接获得的。
global和$GLOBALS的区别在于:
global在函数中生成一个别名变量,该变量指向函数的外部变量,而不是函数的实际外部变量。
$GLOBALS[]调用是一个外部变量,函数的内部和外部总是一致的。
对于类中的成员变量,必须以$this->
而不是$GLOBALS的方式访问类中的函数:
global用于定义全局变量,但此全局变量不应用于整个网站,而是应用于当前页面,包括include或require的所有文件。
就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程