在教学中就跟做软件测试一样,分发现很多新大陆,因为你不停的去做各种尝试,也因为书本或者是教程或者是帮助文档其实说的也不是太清楚,以前也忘了总结,现在就对今天发现的这个问题总结一下:
我们都知道在在php中和在c与js中变量的作用域是不一样的,php中,函数内部是拿不到函数外面所谓定义的全局变量,因此想要去解决这个问题就得有解决办法,网络上也千篇一律的写到用global或者超全局变量数组GLOBALS[],但是也没有过多的说在函数外面能不能用,为何?
其实总结出来也就几句,说死就行了,就是这么规定的:
使用 global 关键字需要注意一下几点:
global 关键字,只能在函数内部使用,不能在函数外部使用;
global 关键字只能用来引用函数外部的全局变量,在引用时不能直接赋值,赋值和声明语句需要分开写;
在函数内部销毁一个使用 global 关键字修饰的变量时,函数外部的变量不受影响。
其实由总结也不难看出,局部的你当然不能用,所以你在函数外面去用global也是没有意义的,也就说明了第一条,第二既然你与c之类的不一样,你的解决办法就是在函数内使用,所以也就不是在函数内定义的了,因为你内部定义的也成不了全局变量,然后再加一条引用的时候不能赋值就可以总结出如上二点;第三点也不难理解,既然是全局,你在函数内部销毁了也只是在你函数内部不能用了,但全局它仍然在哪里,所以外部是不受影响的。
标签:php,函数,global,问题,关键字,全局变量,内部 From: https://www.cnblogs.com/smrjuan-juan/p/16658570.html