从函数内清空全局变量

时间:2019-06-14 15:19:38

标签: php variables scope global-variables

我需要使用用户定义的函数来清空全局变量。 我的理解是,假设您在用户定义的函数中使用[global]设置了全局变量,这应该是可能的。

我的尝试如下:

<pre>
<?php

$storage_clean_from_values = "yes";

$storage = [1,2,3];
var_dump($storage);

function clean_storage() {

    global $storage;

    if ($storage_clean_from_values == "yes") {
        $storage = [];
    }

}

clean_storage();

var_dump($storage);

输出

array(3) { # Outcome of first [var_dump].
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
}
array(3) { # Outcome of second [var_dump].
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  int(3)
}

想要的行为:

第一个[var_dump]应该显示[$ storage]中的所有现有值,第二个[var_dump]应该显示[$ storage],但内容应该为空白。

0 个答案:

没有答案