代码实测:PHP5和PHP7版本global变量机制有哪些变化?

2018-09-0509:46:44后端程序开发Comments2,720 views字数 318阅读模式

为什么在PHP5和PHP7版本下,使用同一global变量时会出现不同结果的问题?下面给大家举一个简单易懂的例子。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/4435.html

比如现有一个exl.php的页面运算代码如下:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/4435.html

代码实测:PHP5和PHP7版本global变量机制有哪些变化?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/4435.html

我们在本地php5版本环境下运行出来的结果是5,如下截图:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/4435.html

代码实测:PHP5和PHP7版本global变量机制有哪些变化?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/4435.html

那么我们在php7版本环境下运行的结果是3,如下截图:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/4435.html

代码实测:PHP5和PHP7版本global变量机制有哪些变化?文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/4435.html

那么之所以会出现不同运算结果,其实是因为在最新的php7版本中,PHPglobal变量处理机制进行了修改,此版本下global关键字现在只能引用简单变量。所以当我们在本地php5版本环境下运算时,输出的$y的值就是$x+$y=5,此时的global就相当于全局变量使用。而在php7环境下,输出的$y的值却是$y=3,此时global变量只能直接引用简单变量$y。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/bc/4435.html

  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/bc/4435.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定