web関連
【PHP】配列が空かどうかチェックするときの書き方
配列が空の時ってどうやって条件分岐させればいいんだろうって思った時の備忘録
empty()で配列が空じゃないかどうかチェック
empty()
を使えば空かどうか確認できた
$array = [];//空の配列準備
if(empty($array)){
echo "空だよ";
}else{
echo "空じゃないよ";
}
空かどうかチェックするのにisset()
とかの関数もあるんだけど、配列に関してはarray(0){}
でもarray(1){…}
だろうがtrue
返しちゃうからとりあえずempty()
使っておけばよさそう
メモ:配列の追加方法
配列に追加する時はこれらが使える
$array = [];//空の配列準備
$array[] = 'value1';
$array += array('value2');
array_push($array,'value3');
$array = array_merge($array,array('value4'));
ただ、上の例だと$array += array('value2');
だけ上手く追加されなかった
$array = [];//空の配列準備
$array += array('value2');
単体で使う分にはうまく追加できた
なんなんだろう…後で調べよっと
empty()を使わなくても空かどうかチェックできる
シンプルにif(!$array){…}
でも配列が空かどうかチェックできるわ
$array = [];//空の配列準備
if(!$array){
echo "空だよ";
}else{
echo "空じゃないよ";
}
array(0){}
はfalse判定をするみたいね
最初
is_array()
とか使うのかなぁって思ってたけど、is_array()
は「配列かどうか判別」する関数だからarray(0){}
もtrue判定しちゃうわ
isset()
は$変数がnullかどうかチェックするから配列で使うときはforeachで回して配列の中に設定してある変数がnullじゃないかチェックするときに使う感じなのかな