by shigemk2

当面は技術的なことしか書かない

PHPという言語は関数を呼び出すときに大文字小文字を区別しない

すこぶる粉砕★玉砕★大喝采な事実が判明してしまったのですが、
PHP: ユーザー定義関数 - Manual

注意: 関数名は大文字小文字を区別しませんが、通常は 関数宣言時と同じ名前で関数をコールする方が好ましいです。

つまり、関数を呼び出すときに大文字と小文字を区別してくれないのです。
下のコードを見てみませう。

<?php

function hoge() {
  echo 'hoge' . PHP_EOL;
}

hoge(); 
HOGE();
hoGe();
hoGE();

4つのhogeは全て呼び出されて、hogeが出力されます。
typoが見過されやすい言語なので、

  1. PHPを使わない
  2. 出来るだけ動的補完やコピペを使う

で対処するのがよろしいかと思われます。