php global与GLOBALS,PHP中global与$GLOBALS的区别?-汗血宝马

PHP中global与$GLOBALS[”]的区?别谢谢!

查文档题。

单一个

global

是一个关键字,通常附加在变量前,用于将变量声明至全局作用域;而

$GLOBALS

是预定义的超全局变量,把变量扔到里边的话一样可以带到全局去。

参考:

PHP>手册>语言参考>变量>变量范围

PHP>手册>语言参考>预定义变量>$GLOBALS

global $var     :  指函数外部同名变量的引用

$GLOBALS['var'] :  指函数外部变量本身

$a = 100;

function one(){

global $a;

unset($a);

}

one();

echo $a;

// 输出 100

/*******************************/

$a = 100;

function two(){

unset($GLOBALS['a']);

}

two();

echo $a;

// 输出 Notice: Undefined variable: a

@熊猫桑 给的手册链接可以看看,同时推荐右侧的相关问题

https://segmentfault.com/q/10…

https://segmentfault.com/q/10…

https://segmentfault.com/q/10…

PHP释放全局变量注意事项:

global $var;

等价于

$var = &$GLOBALS['var'];

在函数内释放一个全局变量,应该这样:

unset($GLOBALS['var']);

而不能这样:

global $var; unset($var);

<?php

$var = 'abc';

$tmp = &$var;

unset($tmp); //当你unset一个引用,只是断开了变量名和变量内容之间的绑定,这并不意味着变量内容被销毁了.

echo $var; //输出abc

be187344ad2841ef7a6e03da9f0ad9e8.png

推荐阅读:globals 设置失败// 查询总条数 $total_coun…

globals 设置失败// 查询总条数 $total_coun…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值