Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP类方法中使用全局变量是一种好的做法吗?_Php - Fatal编程技术网

在PHP类方法中使用全局变量是一种好的做法吗?

在PHP类方法中使用全局变量是一种好的做法吗?,php,Php,在类方法中调用全局变量是好的还是坏的做法?是/否,为什么?检查以下示例: 包含全局变量的PHP文件: $a = ['a1','a2','a3','a4','a5']; 类方法: private function foo($i) { global $a; return $a[$i]; } 您应该将变量保留在局部范围内,并将其作为值或引用传递。根据我在Java和C中所学的知识,这些变量会占用RAM空间,您可能会遇到错误,在不需要修改的情况下修改另一个类中的变量 全局变量可以从程序

在类方法中调用全局变量是好的还是坏的做法?是/否,为什么?检查以下示例:

包含全局变量的PHP文件:

 $a = ['a1','a2','a3','a4','a5'];
类方法:

 private function foo($i)
 {
  global $a;
  return $a[$i];
 }

您应该将变量保留在局部范围内,并将其作为值或引用传递。根据我在Java和C中所学的知识,这些变量会占用RAM空间,您可能会遇到错误,在不需要修改的情况下修改另一个类中的变量

全局变量可以从程序的任何部分访问,因此可以进行修改,例如,如果您想为项目导入库,结果发现该库正在使用同名变量,则程序将停止工作并生成难以解决的错误。全局变量的另一个问题是,当项目变大时,可能会使用以前使用过的变量名。

。。。。。。不…………介意解释一下原因吗?因为全局变量可以在类的范围之外更改,这可能会导致无法想象的噩梦般的错误。原因:>>>