PHPで変数の中身に値が入っているか確認して、結果を出したい場合があると思います。
そんな時使用するのが今回の「empty」コマンドです。
- 変数や配列の中身が空かどうか判定する
- emptyコマンドの使い方がわかる
- emptyコマンドの具体例を見る事が出来る
変数や配列の値が空かどうか確認して、出力結果を変化させてみましょう!
windowsのプロンプトで使用できるbatやpythonやphpを使用して、業務効率化やWebサイトを作成しております。javaやシェルスクリプトなど、様々なプログラミングを行った実績ありの筆者です。
PHPのemptyを使用して変数や配列が空かどうか確認する
PHPでemptyコマンドの使い方
PHPの「empty」コマンドの基本構文は以下です。
empty($変数);
※変数の部分は配列でも問題ありません
「empty」はboolの結果を返します。簡単に言えば変数の中身が空であれば”true”を、そうでなければ”false”を返します。
※配列は空であってもfalseを返します。
PHPでemptyを実際に使用したコード
PHPのemptyで判定した結果を実際に結果を見てみましょう!
下のPHPコードを書いて「empty」の結果をvar_dumpで確認してみました。
<?php
echo "通常</br>";
$hensuu = "変数";
$hairetsu = ["要素1","要素2"];
var_dump(empty($hensuu));
var_dump(empty($hairetsu));
echo "</br>空白の場合</br>";
$hensuu_empty = "";
$hairetsu_empty = ["",""];
var_dump(empty($hensuu_empty));
var_dump(empty($hairetsu_empty));
echo "</br>そもそも変数がない</br>";
$hensuu_no = "変数";
$hairetsu_no = ["要素1","要素2"];
var_dump(empty($hensuu_XXX));
var_dump(empty($hairetsu_XXX));
?>
PHPでemptyを使用したコードの説明
まず変数に値を入れています。
次に配列に値を入れています。
var_dumpでそれぞれ中身を確認しています。
var_dumpで変数や配列自体がないものをempty判定しています。
PHPでemptyを使用して見た結果
PHPでemptyを使用してHTMLに出力した結果は以下となりました。
通常
bool(false) bool(false)
空白の場合
bool(true) bool(false)
そもそも変数がない
bool(true) bool(true)
変数がある場合はboolのfalse、空の場合はboolのtrueが返されている事が確認できました。
配列の場合は中身があってもなくてもfalseを返しています。
変数や配列自体がない場合はtrueを返している結果となりました。
PHPのemptyコマンドを実践で使ってみる
ではPHPのemptyコマンドを実践で使用した具体例を見ていきます。
PHPのemptyコマンドを実践で使用したコード
私はifと組み合わせて使用しました。
<?php
echo "通常</br>";
$hensuu = "変数";
$hairetsu = ["要素1","要素2"];
var_dump(empty($hensuu));
var_dump(empty($hairetsu));
echo "</br>空白の場合</br>";
$hensuu_empty = "";
$hairetsu_empty = ["",""];
var_dump(empty($hensuu_empty));
var_dump(empty($hairetsu_empty));
echo "</br>そもそも変数がない</br>";
$hensuu_no = "変数";
$hairetsu_no = ["要素1","要素2"];
var_dump(empty($hensuu_XXX));
var_dump(empty($hairetsu_XXX));
echo "</br>-------------------------";
if(empty($hensuu)){
echo '</br>$hensuuは空です';
}
if(empty($hensuu_empty)){
echo '</br>$hensuu_emptyは空です';
}
if(empty($hensuu_XXX)){
echo '</br>$hensuu_XXXは空です';
}
?>
PHPのemptyコマンドを実践で使用したコードの解説
emptyの戻り値の結果をifの判定に使用しています。
trueだと{}の中のechoで文字を表示させる簡単なコードです。
PHPのemptyコマンドを実践で使用した結果
HTMLに表示されたのは以下でした。
通常
bool(false) bool(false)
空白の場合
bool(true) bool(false)
そもそも変数がない
bool(true) bool(true)
-------------------------
$hensuu_emptyは空です
$hensuu_XXXは空です
ifの2つ目と3つ目はtrueが返されているのでechoで表示されています。
1つ目はfalseなので表示されていません。成功です。
PHPでemptyの使い方!のまとめ
PHPで変数の中身が空であるかどうかを確認するコマンドは「empty」で基礎構文は以下です。
empty($変数);
※配列では使用できません。
変数の中身が空であればtrueを、入っていればfalseを返します。
変数や配列自体がない場合はどちらもtrueを返します。
変数や配列の中身を確認するコマンドとしてemptyの他にissetというコマンドもあります。詳しくは下の記事で説明しています。
今回のPHPでemptyの結果を表にまとめておきます。またissetの結果も比較として載せておきます。
emptyコマンド | 変数 | 配列 |
---|---|---|
存在し値もある | bool(false) | bool(false) |
存在しているが中身は空白 | bool(true) | bool(false)※配列は判定できない |
存在していない | bool(true) | bool(true)※配列自体なければtrue |
issetコマンド | 変数 | 配列 |
---|---|---|
存在し値もある | bool(true) | bool(true) |
存在しているが中身は空白 | bool(true) | bool(true) |
存在していない | bool(false) | bool(false) |
今回は変数が空かどうか判定するemptyを詳しくみていきましたが、時と場合によってissetと使い分けて下さい。