游戏攻略

php global用法/php global 变量/$globals php

日期:2015/12/20 00:00:00来源: 互联网

php global用法/php global 变量/$globals php

    最近在研究PHP,期间遇到了global和$GBLOBALS,网上找到的一些资料大多相同,连例子都一样,学习完后,还是一头雾水。后来,结合网上材料及自己多方实践,总结出它的用法。

    PHP中的关键字global用于声明或引用全局变量,可以用于函数中,也可以用于函数外(函数外使用没有语法错误,但由于函数外声明的变量都是全局的,实际没有意义,所在函数外是不用的)。在函数外声明的变量,要在函数中使用,就需要用global关键字来声明引入才能使用。如下面代码t函数中global $x,$y,$z,$d,$e的$x、$y就是在函数中引入的全局变量,之后函数内的表达式$z=$x+$y才能使用。而,$z,$d,$e这三个变量,由于在函数外没有声明,所以就是创建或声明的全局变量,既然是全局变量,它在函数之外或其它函数中也可以使用。函数之外可以直接使用,在另一个函数使用的话,也需要用global来引入,s函数中就引入了t函数声明的全局变量$d和$e。

<?PHP
$x=3;
$y=5;
function t(){
 global $x,$y,$z,$d,$e;//引入$x、$y全局变量、声明$z,$d,$e全局变量
 $d=5;
 $e=7;
 $z=$x+$y;
  }
function s(){
 global $m,$n,$d,$e;//引入函数t中声明的$d,$e变量,声明$m,$n变量
 $m=$e-$d;
 $n=$GLOBALS['y']-$GLOBALS['x'];//$GLOBALS用法
 echo "<br>";
 echo "全局变量\$n等于$n";
  }
t();
echo "全局变量\$z等于$z";//函数之外输出全局变量
s();
echo "<br>";
echo "全局变量\$m等于$m";//输出函数内声明的全局变量
?>

    下面再来说一下$GLOBALS,PHP函数中声明的全局变量默认情况下都会在数组$GLOBALS生成一个元素,该元素下标是变量名。函数外使用$GLOBALS没有什么意义,函数内想直接使用全局变量则可以用$GLOBALS['变量名'],这里需要注意的是$GLOBALS中的$符号不能少,并且GLOBALS必须是大写。

相关文章

相关下载

网友评论

我要评论...
    没有更早的评论了
    取消