PHP函数重载的替换方法——伪重载详细解决方案

替代函数重载的伪重载,这里是一个特定的实例代码。




< PHP
函数重载重载伪重载

事实上,如果没有PHP中函数重载的概念,那么很多次我们无法进行某些处理,有时不得不在定义良好的n参数时起作用。
在 /看func_get_arg,func_get_args,func_num_args,这三个功能,你是不是在想什么

功能测试的一个(合一){
回声(a参数是如此);
}

功能试验($,$){
回声(两参数都是这样的);
}

功能三($,$,$ C){
回声(,这是三个参数);
}

函数测试(){
argnum美元= func_num_args();
在这一节中我们可以使用 / / $ _arg =(func_get_args)获得的所有参数,仅只使用数组,不容易表达下我,哦
为($我= 0;美元美元美元我<< argnum;i++){
_arg_美元{ $我} = func_get_arg(合一);
}
开关($ argnum){
案例1:
TestOne(_arg_1美元);
打破;
案例2:
试验(_arg_1美元,美元_arg_2);
打破;
案例3:
三(_arg_1美元美元美元,_arg_2,_arg_3);
打破;
违约:
回声(这是一个没有任何参数的情况下);
打破;
}
}
测试();
回声(');
测试(1);
回声(');
测试(1, 2);
回声(');
测试(1, 2, 3);

这些只是在使用中的功能,最重要的是在使用中。
如果我不需要担心构造函数是否有多个参数,那么可以使用这些类,不是吗

类测试{
var $ = 0;
var $ = 0;

函数测试(){
argnum美元= func_num_args();
_arg美元= func_get_args();
开关($ argnum){
Case 1:
美元-> test1($ _arg { 0 });
打破;
案例2:
美元-> test2($ _arg { 0 },_arg美元{ 1 });
打破;
违约:
$ = 0;
$ = 1;
打破;
}
}

功能测试($){
$;
}

功能测试2($,$){
$;
$;
}
}
>



以上是本文的全部内容,希望大家能喜欢。