PCスキルの小技・忘却防止メモ

仕事で調べたり覚えたりした小技たち。参考書大好きな人たちには役に立たないかもね。

php TRUEとFALSEについて

調べごとをしていた際に参考にしたサイトで理解できない内容があった。
ということで先にそれを調べた。

内容はif文で「$A===TRUE」ってのがあった。
よくわからんけど…値が「0」のときは「FALSE」、「1」のときは「TRUE」扱いになるっぽい。
だから、単純に「$A==FALSE」とか「$A==TRUE」にすると値が「0」「1」で何かができなくなる場合がある。例えば、下記のような場合。

  1. $flag = 0;
  2. if($flag == FALSE){
  3.  $aaa = "値はFALSE";
  4. }else if($flag == 0){
  5.  $aaa = "値は0";
  6. }
  7. echo $aaa;
  8. // 出力結果は「値はFALSE」になる。
  9. // $flagの値が「0」だから「FALSE」って勝手に判断されるらしい。

一覧。

  1. $flag = 0;
  2. // ▲の値を色々と変更してみた
  3.  
  4. $aaa = "";
  5.  
  6. if($flag === FALSE){ $aaa .= "1.「===」でFALSE。” . “\n"; }
  7. if($flag === TRUE) { $aaa .= "2.「===」でTRUE。”  . “\n"; }
  8. if($flag ==  FALSE){ $aaa .= "3.「==」でFALSE。”  . “\n"; }
  9. if($flag ==  TRUE) { $aaa .= "4.「==」でTRUE。”   . “\n"; }
  10. if($flag ==  0)    { $aaa .= "5.「==」で0。”      . “\n"; }
  11. if($flag === 0)    { $aaa .= "6.「===」で0。”     . “\n"; }
  12. if($flag ==  1)    { $aaa .= "7.「==」で1。”      . “\n"; }
  13. if($flag === 1)    { $aaa .= "8.「===」で1。”     . “\n"; }
  14. echo $aaa;

出力結果をまとめたもの。

1行目の設定 $flagに代入された値 出力結果
$flag=0; 0 3.「==」でFALSE。
5.「==」で0。
6.「===」で0。
$flag=1; 1 4.「==」でTRUE。
7.「==」で1。
8.「===」で1。
$flag=2; 2 4.「==」でTRUE。
$flag=NULL; 3.「==」でFALSE。
5.「==」で0。
$flag=””; 3.「==」でFALSE。
5.「==」で0。
$flag=FALSE; 1.「===」でFALSE。
3.「==」でFALSE。
5.「==」で0。
$flag=TRUE; 1 2.「===」でTRUE。
4.「==」でTRUE。
7.「==」で1。
$flag=”あ”; 4.「==」でTRUE。
5.「==」で0。
$momo=3;
※[未定義]
3.「==」でFALSE。
5.「==」で0。

条件式に「TRUE/FALSEと0/1の両方を入れると面倒だ」ってことかな…?

ちなみに、「===」は「型と値」が同一かをチェック。

2011/03/23 カテゴリ: php

新着(ニュース関連以外)

2014/07/16

GoogleMapを埋め込みたいが、ピン付きで埋め込みたい。

2014/07/15

最近…ってことでも無いけど、「Facebookアカウントで当サイトはログインできます」ってのを見かける。真似したい。

2014/07/15

ajax()を使ってJSONを取得しているんだけど、IEだけ取得できない。

2014/07/06

Facebookの「Like Button」と「Like Box」について。

2014/07/04

Facebookの「いいね」ボタンの設置が下にずれるので対策。

現在時刻:ブラウザが対応していません
PCスキルの小技・忘却防止メモ
ExcelにHTML、CSSとかjavascriptなどPCに関連するお勉強・小技のメモ

カテゴリー

Yes or Noくじ

どっちでもいい選択に悩んだときは「くじ」で決める。「AとBのどっちにしようかな…」という場合「Aにする」と心に決めて「スタート」、適当なタイミングで「ストップ」ボタンを押す。「OK/Yes」となれば「A」、「NG/No」となれが「B」にするってな感じ。




PCスキルの小技・忘却防止メモのFeed

タグ

Air analytics apijavascript ASP.NET MVC CMD continueとbreak CrenaHtml2jpg cURL c言語 EXCEL explain Facebook flexとDBの連携 flexとPHPの連携 flexのイベント関連 FuelPHP google htaccess IE Image_Graph MeCab MediaWiki Net_Whois OpenOffice Paypal PDF PDO PEAR Simple HTML DOM Parser SQLite svn Trac wpプラグイン XAMPP ZohoCRM まとめ オブジェクト指向 クラスカル・ウォリス検定 セキュリティ ツール ドネーション 乱数 型変換 画像認証 配列