15621857753

PHP超全局变量$GLOBALS的三种典型用法

来源:齐鲁建站 栏目:开发教程 阅读: 日期:2022-12-06

本文介绍了PHP超全局变量$GLOBALS的三种典型用法,$变量名是等价于$GLOBALS[ 变量名 ] 。所有的变量都放到了$GLOBALS里面了。而$GLOBALS也是全局的。将函数体内的变量(局部变量)在函数外部使用。也可以让函数外的变量到函数里面来使用。

一、通过$GLOBLAS来读取外部变量

<?php

$one = 10;

function demo(){

   $two = 100;

   $result = $two + $GLOBALS['one'];

   return $result;

}

//你会发现结果变成了110

echo demo();

?>

结论:将函数体外的变量通过$GLOBALS拿到了函数体使用。所以,打破了函数外的变量不能在函数体内使用的限定。

二、通过$GLOBLAS,在函数内修改外部变量

<?php

$hongniu = '我是一个兵,来自老百姓';

function test(){

   echo '执行了函数test哟<br />';

   //调用test()函数,将通过$GLOBALS['hongniu'],把$hongniu的值改变掉

   $GLOBALS['hongniu'] = '帮助别人很快乐';

}

test();

//发现是不是输出的值变了呀?

echo $hongniu;

?>

结论:通过$GLOBALS['hongniu'],把$hongniu的值改变掉,所以在最后输出$hongniu的时候,值发生了变化。

三、通过$GLOBLAS,在函数内创建全局变量

<?php

function hello(){

   $GLOBALS['que'] = '提神喝茶更好哟';

   echo '你调了一下函数hello<br />';

}

hello();

echo $que;

?>

结论:函数内声明的变量,通过$GLOBALS声明一个变量,也能够显示出来。

【延伸知识】

全局变量另一种不太常用的声明方式:

global $变量1[,变量2,....变量n]

在global后面可以跟一个或者多个变量,变量用逗号分开

<?php

$a = 10;

$b = 100;

function test(){

   global $a , $b;

   echo $a + $b;

}

//结果是不是显示出来了?

test();

?>

注意:

1)与$GLOBALS一样,只是用法不同而已

2)不可在global 后写 $变量 = 值

 

展开