【问题标题】:Is it a good practice to use global variables in PHP class methods? [duplicate]在 PHP 类方法中使用全局变量是一种好习惯吗? [复制]
【发布时间】:2015-03-23 19:37:28
【问题描述】:

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

包含全局变量的 PHP 文件:

 $a = ['a1','a2','a3','a4','a5'];

类方法:

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

【问题讨论】:

  • ......没有.......
  • 介意解释一下原因吗?
  • 因为全局变量可以在类范围之外更改,这可能会导致难以想象的噩梦。
  • 为什么: >>> tomnomnom.com/posts/…

标签: php


【解决方案1】:

您确实应该将变量保留在本地范围内,并将它们作为值或引用传递。从我在 Java 和 C 中学到的知识来看,这些变量会占用空间 (RAM),而且当你无意修改另一个类的变量时,你可能会遇到错误。

【讨论】:

    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 2014-12-23
      • 2017-06-14
      • 1970-01-01
      • 2013-10-13
      • 1970-01-01
      • 1970-01-01
      • 2018-02-25
      • 1970-01-01
      • 2017-07-15
      相关资源
      最近更新 更多