ヌル型:null
ヌル型とは
ヌル型(null)とは値に「何もない」状態の特殊な型です。この型の値はNULLのみで、大文字・小文字を区別しません。NULLは定数でPHPに予め定義されている定義済み定数です。
ヌル型はPHP4で導入されましたので、それ以前のバージョンでは使用できません。
変数にヌル型を持たせるためには以下のサンプルのようにします。
$var = NULL; //ヌル型NULLを$varに代入
PHPでは以下のような場合にNULLとみなされます。
- NULLが代入されている場合
- 値が何も代入されていない場合
- 変数が存在しない場合
unset()関数で変数が破棄されている場合
unset()関数は一度定義した変数を解除(破棄)する関数です。
unset()関数実行前と実行後の型を見てみます。変数破棄後に変数を呼び出すのでNoticeエラーを発生します。gettype()関数は指定した変数の型を取得できる関数です。
<?php
$var = "something"; //変数定義
echo "unset前の\$varの型--".gettype($var)."<br />\n"; //現在の型出力
unset($var); //変数破棄
echo "unset後の\$varの型--".gettype($var); //現在の型出力
?>
出力結果
unset前の$varの型--string
unset後の$varの型--NULL
unset後の$varの型--NULL
unset()関数の前後で変数の型が変わっています。
このスクリプトはNoticeエラーを発生しますが、エラーメッセージは未定義の変数を呼び出した時と同じものです。Noticeエラーはデフォルトでは出力されません。
Notice: Undefined variable: var in (ファイルパスとエラー行数)
エラーメッセージは「未定義の変数:varがあります。」といってます。どうやらunset()関数は痕跡も残さず変数を削除するようです。
つまり、「存在しない変数」を扱った時と同様の処理になりますね。


