PHP Cheat Sheet

2007.05.31 Author: Jas

今日は便利なサイトを見つけたのでその紹介をします。
紹介するのはタイトルの通り「PHP Cheat Sheet」です。

Cheat Sheet(チートシート)は日本語に訳すとカンニングペーパーですが、別にこのサイトは不正行為をするためのものではありません。今回紹介するチートシートとは、プログラミングをしていて、「あれ、これはどうなるんだったかな?」と思ったときに便利な情報が載っている、早見表のことですよ。

普通はプログラミングのCheet Sheetというと、使用できる関数の一覧だとか、オプションの一覧などが多いのですが、今日はちょっと違ったCheat Sheatを一つ紹介したいと思います。


ここで、突然ですが問題です。

if ($str) {
    echo "true";
} else {
    echo "false";
}

下の4つの値を上に書いた条件式に当てはめると、それぞれ何が表示されるでしょう?
また、条件を($str)から(isset($str))に変えたら、どうなるでしょう?

1. $str = 0;
2. $str = "0";
3. $str = "";
4. $str = null;

ちょっと考えれば簡単な問題なのですが、プログラムの初心者だったり、関数の意味があいまいだったりすると、混乱してしまいますよね。これ以外にも、if文の条件が("0" == 0)や、("" == null)だった場合、真偽のどちらが返ってくるかわかるでしょうか?

「え!どっちだっけ?」と思ったら、このサイトが役に立ちます。

PHP Cheat Sheet

まず、一番上の「Empty() & Co, Special Values」の表には、isset()やis_null()の関数に値を代入したとき、trueとfalseのどちらがでるかの結果がまとめてあります。

この表を参照すれば、先ほどの問題の答えがすぐにわかりますね。
条件が ($str) のときは、一番右の"(bool)"列になるので、答えは全て"false"です。
次に、条件を (isset($str)) に変えたときは、右から二番目の"isset()"列なので、答えは4番の"null"だけが"false"で、それ以外の3つは"true"です。

下にある2つの表、「comparison with ==」と「comparison with ===」は比較したときの結果、要するにif文の条件で上と左の2つの値を比較したときの真偽です。

この3つの表が理解できるようになれば、if文で予想通りの条件分岐をすることができますね。

この他にも、関数一覧表などのCheat Sheet(すべてPDF形式)を見つけたので、簡単に紹介しておきます。


PHPの関数早見表(pdf)

使用頻度の高い関数と正規表現、修飾子、日付フォーマットなどのオプションの早見表。
Function Arguement Ordersは、検索、置換、分割などの関数で、パターンや区切り符号と加工したい文字列の引数の順番。

正規表現早見表(pdf)
後方参照の説明とサンプルが便利。

Smarty早見表
情報は少ないですが、ど忘れしたときには使えそう。

以上です。

名古屋のWebシステム開発・ネットワーク構築会社 コネクティボへ