在全局 php 变量中使用下划线


Using underscores in global php variables

>我计划在我的脚本中将一些常见变量公开为全局变量,并且想知道以下命名方案是否被认为是坏主意:

  1. 在开头和结尾使用单个下划线,如下所示:$_some_var_
  2. 在开头使用三重下划线,例如:$___some_var

我知道 php 在开头对超全局变量使用单下划线,对魔术方法使用双下划线,所以应该不会有任何冲突。还有什么可能引起麻烦的吗?这样做是否出于任何其他原因被认为是不好的?

谢谢!

它不会引起任何问题。 为了便于键入,您可能只想使用单个下划线。

在我的应用程序中,如果我必须引入这样的全局变量,我可以在函数内部和外部的许多脚本中使用,我使用超全局$GLOBALS,因此很明显,正在访问的变量是全局变量。

这也避免了在函数中使用global $somevar;。 但是,根据您使用它们的频率,打字要多得多。

这些值可能是常量还是实际上是可变的?

如果你真的认为你需要全局状态,那么创建一个静态类怎么样?

class myVars {
  static property $var1;
}

如果要将它们视为常量,请使用: 定义("CONSTANT_NAME",值)

如果它们真的是全局变量,那么一个约定是: $mVariableName