Tips

2012.10.12

PHP NULL型 【初級編 第14回】

PHP NULL型 【初級編 第14回】

NULL型について

前回は string型について記載しました。
今回は特殊な型である NULL型について記載していきたいと思います。

NULL型の概要

NULL型とは

NULL型は、変数に値が無い状態を意味します。
変数に値が入っていない場合の処理を記述したい場合などに使用します。
NULL型にするには、変数名を記述して値を代入しなければ NULL型になります。
また変数に代入する文字を NULL と記述しても NULL型になります。
この代入する際の大文字や小文字の区別はないので、null のようにしても問題ありません。

この代入する NULLとは定数を表しています。
定数については詳細を後で記述しますが、PHPによってあらかじめ決められた値のようなものです。

NULL型のサンプル

以下のサンプルでは $hensuu はどちらもNULL型となります。
確認のため、gettype機能で型名を表示します。

<?php
 $hensuu;
 echo gettype($hensuu);
?>
<?php
 $hensuu = NULL;
 echo gettype($hensuu);
?>

ブラウザから確認すると、NULL という文字が表示されます。

ブラウザ確認画像

unset機能を使用して変数を開放

unsetとは

unsetを使用すると、一度変数に代入して定義した値を破棄することができます。
値を破棄するということは、その変数は NULL型ということになります。

使用例

以下では、数値を代入した integer型の変数から、unsetを使用して値を破棄しています。

<?php
 $hensuu = 123;
 echo gettype($hensuu).$hensuu;
 echo "<br>";
 unset($hensuu);
 echo gettype($hensuu).$hensuu;
?>

ブラウザから確認すると、unsetによって値が破棄され、NULLになっていることが分かります。
ブラウザ確認画像

null型を他の型へキャスト

null型をint型にした場合

null型を integer型へキャスト(変換)すると 値が 0になります。

<?php
 $num = null;
 echo (int)$num;
?>

また float型も同様に 0になります。

<?php
 $num = null;
 echo (float)$num;
?>

ブラウザ確認画像

ブラウザから確認すると、どちらも 0と表示されます。

ちなみに string型に変換してみた場合は、何も値は表示されません。

<?php
 $str = null;
 echo (string)$str;
?>

表示されませんでした。

ブラウザ確認画像

今回はここまでで、次回また別の型について記載していきたいと思います。

新連載はじまりました!新PHP基礎 連載リンク

PHP基礎 連載

Recent News

Recent Tips

Tag Search