フルスタックエンジニアのノウハウ
2021.04.27    2022.02.14

PHPマニュアルを一緒に読み解こう!#7「型:論理型」

PHPマニュアルを一緒に読み解こう!#7「型:論理型」

この記事の動画版はこちら

チャンネル登録お願いします!


※この記事はPHPマニュアルの解説です。


論理型【要点まとめ】


言語リファレンス > 型 >「論理型」の解説です。
マニュアルページを見ながらご覧ください。


論理型は、数あるデータ型の中でも最もシンプルな型であり、値は「true」か「false」のどちらかになります。


PHPでは、「bool型」または「boolean型」と呼ばれます。


また、trueのことを日本語で「真」falseのことを日本語で「偽」というため、真偽値(しんぎち)と呼ばれたりもします。


booleanのデータを扱いたい場合は、ソースコードに「true」または「false」と直接書くことで設定することができます。


これらは大文字/小文字を区別しないため、全て大文字で書いてもどれかを大文字にしても、全て小文字で書いても違いはありません。


booleanは、if文などの制御構造の条件判定として使われることが多いです。


PHPでは、このようにイコールを2つ続けて書くと、左辺と右辺が等しければ「true」等しくなければ「false」が返されます。




if文は、条件判定が「true」の場合に波括弧の中の処理を実行しますので、この場合は$actionという変数の値がshow_versionという文字列と等しかった場合に、このecho文が実行される訳ですね。


よりboolean的な言い方をすれば、$actionという変数の値とshow_versionという文字列の比較結果が「true」の場合に、このecho文が実行されるということですね。


なお、値自体がtrueかどうかを判定するならば、このように「== TRUE」とわざわざ書かなくても




括弧の中にただ変数名を書くだけでOKです。




if文は、括弧の中がtrueかどうかで判定しますので、このような書き方でも問題ないということですね。


他のデータ型の値を、booleanに変換するには「キャスト」という方法を使います。


キャストするには、データや変数の直前に(bool)または(boolean)を付けるだけです。


ただし、先ほどのif文のように、引数としてboolean型が求められている場合、boolean以外のデータを与えても自動的にboolean型に変換してくれます。


そのため、多くの場合ではboolean型へのキャストは不要です。


ここに列挙されているような値を、boolean型にキャストすると、結果は「false」になります。




例えば、0という数字をboolean型にキャストすると「false」になるということですね。


他にも、空の文字列や、空の配列、NULLなども「false」に変換されます。


逆に、ここにないデータは全て「true」に変換されます。


注意点として書かれていますが、「-1」のような負の数字も「false」ではなく「true」に変換されるので覚えておきましょう。


falseに変換されるのは「0」と「空」だけ、というイメージですね。


ということで、今回は「型」の章から「論理型(boolean)」を読み進めました。


また次回、この続きから読み進めていきましょう!


おすすめ記事