一、举例比较 
例一:

<?php 
$var1 = 1; 
function test(){ 
unset($GLOBALS['var1']); 

test(); 
echo $var1; 
?> 

因为$var1被删除了,所以什么东西都没有打印。 
例二:

<?php 
$var1 = 1; 
function test(){ 
global $var1; 
unset($var1); 

test(); 
echo $var1; 
?> 

意外的打印了1。证明删除的只是别名引用,其本身的值没有受到任何的改变。

二、解释 
global $var其实就是&$GLOBALS['var'],调用外部变量的一个别名而已。 
上面代码中的$var1和$GLOBALS['var1']是指的同一变量,而不是两个不同的变量。 
PHP的全局变量和C语言有一点点不同。在C语言中,全局变量在函数中主动生效,除非被局部变量笼罩。这可能引起一些问题,有些人可能漫不经心的转变一个全局变量。PHP中全局变量在函数中应用时必须用global申明为全局。 
PHP的Global变量的作用是定义全局变量,但是这个全局变量不是应用于整个网站,而是应用于当前页面,包括include或require的所有文件。

三、结论 
1.$GLOBALS['var']是外部的全局变量本身 
2.global $var是外部$var的同名引用或者指针。

转载于:https://www.cnblogs.com/insomniazz/p/6680224.html

PHP中全局变量global和$GLOBALS[]的区别分析相关推荐

  1. php中全局变量global和超全局变量$GLOBALS

    php中全局变量global和超全局变量$GLOBALS 1.global Global的作用是定义全局变量,但是这个全局变量不是应用于整个网站,而是应用于当前页面,包括include或require ...

  2. php的globle超全局变量,php中全局变量global和超全局变量$GLOBALS

    php中全局变量global和超全局变量$GLOBALS 1.global Global的作用是定义全局变量,但是这个全局变量不是应用于整个网站,而是应用于当前页面,包括include或require ...

  3. sql语句中left join和inner join中的on与where的区别分析

    原文:sql语句中left join和inner join中的on与where的区别分析 关于SQL SERVER的表联接查询INNER JOIN .LEFT JOIN和RIGHT JOIN,经常会用 ...

  4. php request time,php中time()与$_SERVER[REQUEST_TIME]用法区别分析

    php中time()与$_SERVER[REQUEST_TIME]用法区别分析 发布于 2015-01-26 08:56:46 | 143 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本 ...

  5. [转载] python不允许使用关键字_Python中关键字global与nonlocal的区别

    参考链接: Python全局关键字 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/xCyansun/article/details/79672634 ...

  6. Python中关键字global与nonlocal的区别

    终于下定决心学习Python了.既然从头开始,就需要认认真真. 首先需要说的是,我是初学Python,这篇文章只是用于展示global和nonlocal关键字的区别,是很简单的知识点,如果你已经学过, ...

  7. php全局变量global和$GLOBALS

    global和$GLOBALS的使用,global $a;$a='hello';$GLOBALS['a']='hello';$GLOBALS必须在指定时就要赋值操作. 转载于:https://www. ...

  8. 全局变量:global与$GLOBALS的区别和使用

    今天在写框架的时候想把SaeMySQL初始化之后作为全局变量使用. 但是后来发现PHP中的全局变量和Java或者OC中的全局变量还是有较大区别的. 下面记录一下php里面的global的使用相关注意事 ...

  9. [PHP]全局变量:global与$GLOBALS的区别和使用

    今天在写框架的时候想把SaeMySQL初始化之后作为全局变量使用. 但是后来发现PHP中的全局变量和Java或者OC中的全局变量还是有较大区别的. 下面记录一下php里面的global的使用相关注意事 ...

最新文章

  1. f12 卡 谷歌浏览器_抢券第二课:利用浏览器F12获取优惠券请求链接
  2. 搜索NLP行业模型和轻量化客户定制
  3. 新视角:用图像分类来建模文字识别也可以SOTA
  4. 一个简单的WPF字体选择器实现
  5. easyui的datagrid的使用方法
  6. k8s核心技术-Helm(自定义chart部署)---K8S_Google工作笔记0047
  7. 云主机前景几何,风萧萧兮!
  8. OpenCV3.4.13+OpenCV_contrib 双摄像头实时拼接 环境配置
  9. ZYNQ系统中实现FAT32文件系统的SD卡读写 之一 硬件介绍
  10. 一道闪光在图片上划过
  11. Java中重载和重写的区别
  12. 1.3版走迷宫小游戏(C++)
  13. Web前端基础体验学习过程1 HTML篇
  14. 宾客往来络绎不绝 企业访客管理如何不失礼仪
  15. ES6语法总结(21)--Generator函数的异步应用
  16. (三)爬取新房销售信息——位置坐标转换+地图标点可视化篇
  17. Linux环境下二进制安装PostgreSql
  18. 知识图谱入门学习笔记(二)-知识表示
  19. 混沌工程之ChaosToolkit使用之一删除K8s POD
  20. 查询端口占用和清除端口占用的程序

热门文章

  1. Oracle推出轻量级Java微服务框架Helidon
  2. CURL模拟请求(get/post)
  3. 为什么说Python是伟大的入门语言
  4. 9-7NOIP模拟赛总结
  5. ntfs for Mac无法填写序列号怎么解决
  6. CCF201403-1 相反数(100分)
  7. spring-amqp整合rabbitmq消费者配置和代码
  8. JavaScript 学习笔记— —类型判断
  9. SSH协议、HTTPS中SSL协议的完整交互过程
  10. 第10课--10_04_LVM之二