0

いくつかの変数が宣言されているとしましょう。しかし、どれが正確かはわかりません。変数名を持つ配列があるだけです。

$variable_list = array('var1', 'var2', 'var3', 'var4');

先に進み、いくつかの値を割り当てます。

foreach($variable_list as $var_name){
$$var_name = rand(100,1000);
}

ここで、これらの変数を同様の方法で設定解除したいと思います。それらをリストから削除するのではなく、ACTUAL 変数の設定を解除します。

foreach($variable_list as $var_name){
unset($var_name);
}

これは動作しません。何か案は?

4

2 に答える 2

5
foreach($variable_list as $var_name){
unset($$var_name);
}

PHP マニュアル

于 2012-05-22T12:09:01.060 に答える
0

変数変数 ( $$var_name) を使用してそれらを設定し、そのように設定解除しないのはなぜですか? これはうまくいくはずです:

foreach($variable_list as $var_name){
    unset($$var_name);
}

しかし、あなたが言うので:

[...] それらをリストから削除するのではなく、ACTUAL 変数の設定を解除します。

単純に使用します:

foreach($variable_list as $var_name){
    $$var_name = null;
}
于 2012-05-22T12:12:40.607 に答える