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

时间:2012-10-23 19:25:53

标签: php include unset

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

4 个答案:

答案 0 :(得分:3)

您可能需要查看get_defined_vars(),但使用namespaces会更有意义。

答案 1 :(得分:0)

类似的东西:

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

我永远不会这样做。关注命名空间,就像一些评论者说的那样。

答案 2 :(得分:0)

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

  • 意大利面条代码
  • 姓名冲突

我无法解决它的spaghetti代码部分,但我可以建议你将所有的全局变量移动到它自己的类中以避免名称冲突

您可以将它们设置为单个全局对象的静态属性,而不是设置全局变量

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

并在您的代码中使用它们,如

Globals::global1 = 5;

这可以避免名称冲突,但我仍然避免它,并尝试实现我的代码而不诉诸于全局变量。

答案 3 :(得分:-2)

使用unset();

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