【PHP】PHP の真偽値(true/false)判定の一覧(空配列はfalseなので注意!)

PHP-Boolean

こんにちはフロントエンドエンジニアのまさにょんです!

今回は、PHP の真偽値(true/false)判定について解説していきます。

PHP の真偽値(true/false)判定の一覧

PHP の真偽値(true/false)判定の一覧は、次のとおりです。

PHP の false判定な値は、false, null, 0, '0', '', [ ] の6つになります。

真偽値で迷わないためには、false判定となるデータを把握しておくのがBestだと思います。

<?php

// [ PHP の真偽値判定の一覧 ]

$dataSet = [ true, false, null, 0, 1, 0.1, 1.1,  "0", "1", '', 
    'robotama', [], [0], (object)[], (object)['robotama'=>'ロボ玉'] 
];

foreach($dataSet as $val) {    
    var_export($val);
    echo ' の真偽値判定: ';
    var_dump((bool) $val);
    echo "\n";
}

// [ 実行結果 ]
// true の真偽値判定: bool(true)

// false の真偽値判定: bool(false)

// NULL の真偽値判定: bool(false)

// 0 の真偽値判定: bool(false)

// 1 の真偽値判定: bool(true)

// 0.1 の真偽値判定: bool(true)

// 1.1 の真偽値判定: bool(true)

// '0' の真偽値判定: bool(false)

// '1' の真偽値判定: bool(true)

// '' の真偽値判定: bool(false)

// 'robotama' の真偽値判定: bool(true)     

// array (
// ) の真偽値判定: bool(false)

// array (
//   0 => 0,
// ) の真偽値判定: bool(true)

// (object) array(
// ) の真偽値判定: bool(true)

// (object) array(
//    'robotama' => 'ロボ玉',
// ) の真偽値判定: bool(true)


// [ まとめ ]
// false な値 => false, null, 0, '0', '', [] の6つ

[ ] (空配列)は、falseなので要注意!

[ ] (空配列)は、falseなので要注意です。

<?php

// PHP の真偽値判定の一覧

$dataSet = [ true, false, null, 0, 1, 0.1, 1.1,  "0", "1", '', 
    'robotama', [], [0], (object)[], (object)['robotama'=>'ロボ玉'] 
];

// 空配列かそれ以外のfalseな値かの判定関数
function IsEmptyArray ($data) {
    if (!is_array($data) && $data == false ) {
        echo '空配列以外のfalseな値です!' . "\n";
    } else if (is_array($data) && $data == false) {
        echo '空配列(false)です!' . "\n";
    } else {
        echo 'trueな値です!' . "\n";
    }
};

foreach($dataSet as $val) {    
    IsEmptyArray($val);
}

// [ 実行結果 ]
// trueな値です!
// 空配列以外のfalseな値です!
// 空配列以外のfalseな値です!
// 空配列以外のfalseな値です!
// trueな値です!
// trueな値です!
// trueな値です!
// 空配列以外のfalseな値です!
// trueな値です!
// 空配列以外のfalseな値です!
// trueな値です!
// 空配列(false)です!
// trueな値です!
// trueな値です!
// trueな値です!

まとめ

  1. falseになるデータを把握しておくのがBest
  2. false判定な値は、false, null, 0, ‘0’, ”, [ ] の6つ
  3. [ ] (空配列)は、falseなので要注意!

Twitterやってます!Follow Me!

神聖グンマー帝国の逆襲🔥

神聖グンマー帝国の科学は、世界一ぃぃぃぃぃぃ!!!!!

プログラミング学習・エンジニア転職関連の情報

自宅で現役エンジニアから学べる『TechAcademy』 (エンジニア転職保証)

『GEEK JOBキャンプ』スピード転職コース(無料)

【IT道場】入校時0円! 就職目的プログラミングスクール

エンジニア転職なら100%「自社開発」求人に強い【クラウドリンク】

『techgym』 (Python特化・無料)

PHP / Laravel書籍

参考・引用

  1. PHP でスマホやタブレットなどを判定 Mobile Detect
  2. Mobile Detect

最近の投稿