php - 全局变量

在php中有两种全局变量
全局变量global和超全局变量$GLOBALS[]
全局变量一般写在函数里面,global是将全局作用域的变量的地址,进行复制,然后在局部作用域内新建一个同名的变量名,将外部的地址赋值给局部变量,数据并没有复制过去,所以在函数内部进行global引用,是没有用的,并不会改变外部变量的数据;

超全局变量
整个php页面中,所有定义的变量都是这个$GLOBALS的数组组成元素,使用这个改变的变量,其改变的就是外部同名变量本身

对于php的作用域问题
由于php是编译解析型语言,所以不像js那样有变量提升以及函数提升等
js中作用域:
  全局作用域:任何地方(函数外和函数内)都可以被使用
  局部作用域:只能在函数内部被使用

PHP也有两个作用域:全局作用域和局部作用域
  全局作用域:只能在函数外部使用
  局部作用域:只能在函数内部使用

posted @ 2020-11-23 10:48  ReYiRFW  阅读(423)  评论(0编辑  收藏  举报