最近では空前のプログラミングブールが到来して、色々な人がプログラミングの勉強を始めています。プログラミングの勉強でisset関数やempty関数で行き詰る人も多いと思います。そこで今回はPHPのissetとemptyに関しての解説をこの記事でしたいと思います。
コンテンツ [非表示]
issetとは
変数がセットされていてNULLでないことを調べます。0はNULLではありません。正確には値(データ)がセットされていて、かつNULLでない時にTRUEを返します。NULLは変数が値(データ)を持っていないことを表す特別な値(データ)です。
issetの書き方
if (isset($value)){
echo 'NULLではないです';//True
}else{
echo 'NULLです';//False
}
emptyとは
変数が空であるかどうかを調べます。ポイントは変数に文字列の'0'あるいはからの場合はTrueを、それ以外はFalseを返します。
emptyの書き方
if (empty($value)){
echo '空です';//True
}else{
echo '空ではないです';//False
}
issetとemptyの違い
isset()は変数にしか使えないのに対して
empty()は関数の戻り値などにも使えるようです。
また、if(変数)と!empty()では結果が同じように感じますがif(変数)では変数が定義されていなければエラーになってしまうので、変数の定義がしっかりしている場合しか使えません。
issetとemptyの比較
issetとemptyの比較をしてみました。
引用:https://www.php.net/manual/ja/types.comparisons.php
empty | isset | |
$x = "", | True | True |
$x = null; | True | False |
var $x; | True | False |
$xが未定義 | True | False |
$x = array(); | True | True |
$x array('a','b'); | False | True |
$x = false; | True | True |
$x = true; | False | True |
$x = 1; | False | True |
$x = 42; | False | True |
$x = 0; | True | True |
$x = -1; | False | True |
$x = "1"; | False | True |
$x = "0"; | True | True |
$x = "-1"; | False | True |
$x = "php"; | False | True |
$x = "true"; | False | True |
$x = "false"; | False | True |
こちらが簡単な比較になります。
[初心者向け]PHPの勉強におすすめの本
今回はPHPの勉強でわからないことがあった場合におすすめの本を紹介します。
いきなりはじめるPHP
確かな力が身に付くPHP「超」入門
独習PHP 第3版