浅谈PHP中全局变量与超级全局变量
今天浅谈一下PHP中的全局变量与超级全局变量,PHP超级变量是PHP内置中的php post,get,session这些,在整个PHP全网中通用,不受function内部方法的约束,PHP全局变量则是在函数外定义的变量,受制于函数,不能在函数之中直接使用,如果想要在function中使用的话,需要使用我们的global $a,这是两者的区别。
PHP超级全局变量是直接保存在$GLOBALS数组中的,这里是$GLOBALS,不要加下划线成为 $_GLOBALS 了,可能是受$_POST的影响,容易加上一个下划线,我们可以在PHP手册中搜索$GLOBALS的使用方法。
PHP超级全局变量和PHP全局变量,最细微的区别就是PHP全局变量在页面所有脚本中都可以使用,而PHP全局变量如果想要在其它页面脚本中使用的话需要借助globals来引用。
PHP全局变量容易受到POST的影响,因为好像所有人都会认为,使用方法和POST一样,会在所有页面同时使用,但是没有意识到,你只能访问到POST的数据,我们举个例子来说,如果有两个人留言的话,使用PHP超级变量,POST来接受的话,这个数据是当前线程的,相对于全局变量而言,超级变量是上一个层次的,而PHP的全局变量则不在线程之内,也就是不在接受的范围之内,PHP语言设计就是这样的,我们可以参考一下PHP的手册。
PHP全局变量不能够在所有页面进行使用,哪么我们也只能使用一种替代方式,哪就是PHP的超级变量,在所有页面进行使用,除了PHP超级变量和PHP全局变量,还有一种$a类型的变量,这种变量定义在页面中,是让我们的全局变量和超级变量来获取的变量值,这种层次是最小的,也是灵度度最强的,好了,今天就结合自己的理解来说一下PHP的全局变量和超级变量的区别,最重要的还是自己去查看一下PHP的手册来进行学习。
PHP是最好的语言。真希望有空能学学