- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:$argv[1] の真偽判定)
$argv[1] の真偽判定
このQ&Aのポイント
- PHP初心者が、$argv[1]を使った条件分岐の結果に疑問を持っている。
- 与えられた引数がfalseの場合でも、真と判定されてしまう問題がある。
- 質問者は、この問題の原因と解決方法を知りたいと思っている。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
空と"0"以外の文字列はすべて真です。 > と bool型にキャストしても同じ結果になるのですが、これは何故なのでしょうか? bool型にキャストする前から真なので、キャスト後も真です。
その他の回答 (1)
- notnot
- ベストアンサー率47% (4900/10358)
回答No.1
"false" という文字列は真です。
質問者
補足
回答いだだき、ありがとうございます。 <?php // p075_a.php if( isset($argv[1]) and (bool)$argv[1] ) { echo "与えられた引数は真です\n"; } elseif ( isset($argv[1]) && !(bool)$argv[1] ) { echo "与えられた引数は偽です\n"; } else { echo "引数が与えられていません\n"; } と bool型にキャストしても同じ結果になるのですが、これは何故なのでしょうか?
お礼
理由が分かりました。 どうもありがとうございました。m(__)m