ちゃなんログ

書き散らします。マラソンがしたいです。

phpの真偽値判定について

なんです
最近phpを学んでいます。言語を学ぶ上でtrueとfalseの真偽値を理解しておくことは、後々の事故を防ぐために役立ちます。今回はphpの真偽値についてまとめたいと思います。

条件 php ruby javascript
true true true true
false false false false
"true" true true true
"false" true true true
0 false true false
1 true true true
0.0 false true false
0.1 true true true
"0" false true true
"1" true true true
[] false true true
["0"] true true true
null or nil false false false

自分が普段よく使うrubyjavascriptも記述してみました
条件が足らない部分もあるかもしれませんが最低限このくらい覚えたいです

単純にわかりやすいruby

rubyは一番単純です。nilとfalse以外は全てtrueと判定されます
普段、処理を記述していて真偽値で迷うことはまずありません
しかし、boolean型へ変換するメソッドがないのでそこは少し不便かも?

ちょっと戸惑ったphp

個人的にphpは「おぉう」ってなりました。気になったのは"0"と空配列の2つです
どちらもfalseとなるのですが知らないと詰まってしまいそうです。特に"0"は気づかない可能性が高いです。空配列がfalseになるのは使い方次第で便利かな