Tôi là một n00b tại php. Tôi đã học về các tham số mặc định nên tôi đã thực hiện chức năng này.Tại sao PHP không ném lỗi khi tôi truyền quá nhiều tham số cho một hàm?
function doFoo($name = "johnny"){
echo "Hello $name" . "<br />";
}
tôi đã thực hiện các cuộc gọi
doFoo();
doFoo("ted");
doFoo("ted", 22);
Hai đầu tiên in những gì đã được dự kiến tức là
Hello johnny
Hello ted
nhưng cuộc gọi thứ ba cũng in
Hello ted
Tôi đã chờ đợi một lỗi, sau tất cả các func tion được thực hiện cho một đối số trong khi tôi đang gọi nó với hai đối số.
Tại sao không có lỗi?
bởi vì trong php bạn có thể sử dụng loại chức năng này: http://it.php.net/func_get_args – dynamic