PHP函数参数可否提前

mako 发布于 2012/02/17 20:06
阅读 698
收藏 0
PHP

我看到一个这样的写法,应该是错误的吧,

类似这样一个函数

function abc($a='',$b='',$c=''){
//代码
}
这个函数有三个参数,通常咋们正确的调用方法应该是这样的吧:

abc($a,'',$c);  //$b参数为空,但位置保留

今天看到一个写法是这样的:

abc($a,$c='10');  //$b参数的位置去掉然后直接指定C参数值;

我测试了下不行,这里的C参数任然被复制给B参数;

求个解释,我测试方法不对?还是??

 

加载中
1
王昊然
王昊然

函数传参是需要按顺序的,你看到这个应该是写错了

如果想不按顺序传参,可以使用数组

王昊然
王昊然
@ZhiWei : 恩,也是种不错的方法
雷志伟
雷志伟
传字符串, 然后再用 parse_str() 来解析, 这种方法感觉也挺不错的.
1
嘟嘟的米
嘟嘟的米
如果参数个数不确定的 可以采用数组,大部分函数参数都确定的 然后有默认值的参数都放在最后 
1
pyawen
pyawen
楼上的正解  补充一下  $c='10' 这个只是为了给c赋值为10后作为第二个参数传过去的
1
qycms_cn
qycms_cn
有一种语言是可行的,那就是我见过最牛的python.
qycms_cn
qycms_cn
python的函数,有一种叫关键字参数,好灵活.
0
此人已死,有事烧纸
此人已死,有事烧纸

json解决

在定义有两个以上参数的函数时,

建议使用json传参,

否则就是噩梦。

 

ValueError
ValueError
额…… 楼主说的是 PHP 不是 js 哇。 应该是“关联数组”吧。
返回顶部
顶部