繁体   English   中英

PHP:如何取消包含文件中的所有变量?

[英]PHP: How to unset all variables from included file?

PHP:如何取消包含文件中的所有变量?

您可能想签出get_defined_vars() ,但是使用命名空间的意义要大得多。

就像是:

foreach($GLOBALS as $key => $val) {
    unset($GLOBALS[$key]);
}

我永远不会这样做。 像一些评论者所说的那样,调查命名空间。

您不应该使用全局变量有两个原因

  • 意大利面代码
  • 名称冲突

我无法解决其中的意大利面条式代码部分,但我建议您将所有全局变量移到其自己的类中,以避免名称冲突

代替设置全局变量,您可以将它们设置为单个全局对象的静态属性。

class Globals {
  public static global1 = 0;
  public static global2 = 2;
}

并在您的代码中使用它们

Globals::global1 = 5;

这样可以避免名称冲突,但是我仍然避免使用名称冲突,并尝试在不使用全局变量的情况下实现我的代码。

使用unset();

恩。 未设置($ _ POST); 未设置($ _ GET); 未设置($数据);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM