来源于C++背景;br>
一个函数定义(如果有任何参数)和另一个函数定义(如果没有参数)? 这在PHP中是可能的吗?或者,我是否应该使用if Alse来判断是否有任何参数从$_GET和POST传递过来??并将它们联系起来?
来源于C++背景;br>
一个函数定义(如果有任何参数)和另一个函数定义(如果没有参数)? 这在PHP中是可能的吗?或者,我是否应该使用if Alse来判断是否有任何参数从$_GET和POST传递过来??并将它们联系起来?
不能重载PHP函数.函数签名仅基于它们的名称,不包括参数列表,因此不能有两个同名函数.在PHP中,类method overloading与许多其他语言不同.PHP使用同一个词,但它描述了不同的模式.
但是,您可以声明一个variadic function,它接受可变数量的参数.您可以使用func_num_args()
和func_get_arg()
来传递参数,并正常使用它们.
例如:
function myFunc() {
for ($i = 0; $i < func_num_args(); $i++) {
printf("Argument %d: %s\n", $i, func_get_arg($i));
}
}
/*
Argument 0: a
Argument 1: 2
Argument 2: 3.5
*/
myFunc('a', 2, 3.5);