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); ?>