PHP PHP 変数を破棄する

-


Topページ  >  お勉強  >  PHP  >  変数を破棄する 

変数を破棄する

PHPで、一度宣言した変数を破棄・削除する方法です。





1. 破棄したい変数を引数にして、unset関数を実行します。

// 変数の宣言、値をセットする
$hensu = '12345';

// 変数を破棄する
unset($hensu);

// 破棄されているので、何も表示されない
print $hensu;


2. なぜ破棄する必要があるのか?

変数を宣言したけど使わなくなったのなら、使わなければいいだけ…
なのになぜわざわざ破棄しなきゃいけないんでしょう?

破棄することにより、メモリの節約ができる…ということもありますが、連想配列でデータを使う時に効果を発揮します。

例えば、以下のような連想配列を作成していたとします。

$hensu['key1'] = '12345';
$hensu['key2'] = '67890';

これをvar_dump() で表示した場合、↓のように表示されます。

array(2) { ["key1"]=> string(5) "12345" ["key2"]=> string(5) "67890" }

連想配列内に、"key1" と "key2" が存在しているのが分かります。
じゃあ、「ここから "key1" が必要なくなりました。」 となった場合、どうしましょう?

$hensu['key1'] = null;

とかしても、↓のように、「"key1" は存在していて、NULLがセットされてるよ」という扱いになります。

array(2) { ["key1"]=> NULL ["key2"]=> string(5) "67890" }

ここでunset()を使用します。

unset($hensu['key1']);

とすれば、↓のように、"key1" の存在が削除されます。

array(1) { ["key2"]=> string(5) "67890" }

めでたしめでたし。





[PHP - PHP - 基本]


基本構文  【変数の宣言、if、for、while、関数】


定数を作成・使用する  【define】


POSTでFormの値を受け渡す  【$_POST】


GETでFormの値を受け渡す  【$_GET】



Topページ  >  お勉強  >  PHP  >  変数を破棄する 






-