PHPの引数の数について

関数・メソッドの定義時に指定した仮引数の数より多く渡された分に関しては、PHPは何もいわない。逆に、渡された引数の数が足りない場合は、足りない引数の数だけWarningが発生する。

調べた環境 PHP 5.2.9-2

<?php
function Hoge(){
    echo "Hoge called. argc => ".func_num_args().'<br>';
    foreach( func_get_args() as $key => $value ){
        echo "$key => $value<br>";
    }
}
function Fuga($arg1, $arg2){
    echo "Fuga called. argc => ".func_num_args().'<br>';
    echo "arg1 => $arg1<br>";
    echo "arg2 => $arg2<br>";
}
function Piyo($arg1, $arg2 = 'NULL'){
    echo "Piyo called. argc => ".func_num_args().'<br>';
    echo "arg1 => $arg1<br>";
    echo "arg2 => $arg2<br>";
}

Hoge();
Hoge(1);
Hoge(1, 2);
Hoge(1, 2, 3);

echo '----<br>';

Fuga();  // Warning x2, Notice x2
Fuga(1);  // Warning, Notice
Fuga(1, 2);
Fuga(1, 2, 3);

echo '----<br>';

Piyo();  // Warning, Notice
Piyo(1);
Piyo(1, 2);
Piyo(1, 2, 3);
?>