大文字小文字の区別

若干はまったこと。今更ですが。。。

PHPでは、

  • クラス名は大文字小文字を区別しない。
  • 関数名は大文字小文字を区別しない。

のですが、

「変数名は大文字小文字を区別する」んですね。

>php -r "$foo='foo'; echo($foo);"

>foo

こっちは当然「foo」が出力される。

>php -r "$foo='foo'; echo($FOO);"

>Notice: Undefined variable: FOO in Command line code on line 1

こっちは怒られる。


クラス名関数名は区別しないもんだから
変数名もそうだろうと思い込んでました。