为了账号安全,请及时绑定邮箱和手机立即绑定

那么在调用foo的时候怎么能赋值给$a和$c.而$b为默认的2?

那么在调用foo的时候怎么能赋值给$a和$c.而$b为默认的2?

PHP
牧羊人nacy 2023-01-02 15:11:20

例如:
foo($a=1,$b=2,$c=3){
echo $a;
echo $b;
echo $c;

}

我知道这语法是错误的。例如,foo($a=4,$c=5)
比如foo中输出,
4 2 5
foo是个接口。我不能改动,只知道调用参数。

查看完整描述

3 回答

?
扬帆大鱼

TA贡献1539条经验 获得超9个赞

跨过中间的默认参数?
地球上目前么有任何编程语言能支持这种奇怪的调用方式。
也许可以利用反射做到这一点?
我不确定。

查看完整回答
反对 回复 2023-01-06
?
汪汪一只猫

TA贡献1629条经验 获得超8个赞

<?php
function foo()
{
$numargs = func_num_args();
echo "Number of arguments: $numargs<br />\n";
if ($numargs >= 2) {
echo "Second argument is: " . func_get_arg(1) . "<br />\n";
}
$arg_list = func_get_args();
for ($i = 0; $i < $numargs; $i++) {
echo "Argument $i is: " . $arg_list[$i] . "<br />\n";
}
}

foo(1, 2, 3);
?>

 


查看完整回答
反对 回复 2023-01-06
?
HUH函数

TA贡献1567条经验 获得超4个赞

不能做一个外套函数吗?
foo2($a=4,$c=5){
foo($a,2,$c);
}
foo2($a=4,$c=5)

查看完整回答
反对 回复 2023-01-06

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信