辛星浅谈PHP中的函数的默认参数必须在右边吗
2014-07-30 03:57
309 查看
不论我们学习哪门编程语言,可能PHP中的默认参数放在右边这已经成为了一个不成文的规定,当然,这样做确实在很大程度上让我们对函数的理解更加清晰,如果一个函数的参数里面既有含默认参数的,又有非默认参数的,那调用的时候也很混乱,究竟这个参数是使用的默认值还是使用的传入的数据呢?
比如我们看如下代码:
它的输出我想大家都能想到,如下:
可以看到,我们自定义的函数是无法把默认参数放到左边啦,那么为什么我还会发这篇博客呢?因为我们有一个内置的函数是在左边启用了默认参数,这个函数就是implode,它的第一个参数是可选的分隔符,第二个则是一个数组。
比如我们如下:
如果我们代码如下:
则代码显示如下:
看到了吧,这个分隔符是在左边的,也就是说,我们的默认参数是可以在必选参数的左边的,可惜只是内置函数。。。
比如我们看如下代码:
<?php function xin($age,$name = "辛星"){ echo "我的名字:",$name; echo "<br />"; echo "我的年龄:",$age; } xin(23);
它的输出我想大家都能想到,如下:
我的名字:辛星 我的年龄:23那么如果我们强制把默认参数放到左边呢,如下代码:
<?php function xin($name = "辛星",$age){ echo "我的名字:",$name; echo "<br />"; echo "我的年龄:",$age; } xin(23);那么它的输出如下:
可以看到,我们自定义的函数是无法把默认参数放到左边啦,那么为什么我还会发这篇博客呢?因为我们有一个内置的函数是在左边启用了默认参数,这个函数就是implode,它的第一个参数是可选的分隔符,第二个则是一个数组。
比如我们如下:
<?php $arr =array("辛星","小倩","小楠"); $str =implode($arr); echo $str;那么它的显示如下:
辛星小倩小楠
如果我们代码如下:
<?php $arr =array("辛星","小倩","小楠"); $str =implode("---",$arr); echo $str;
则代码显示如下:
辛星---小倩---小楠
看到了吧,这个分隔符是在左边的,也就是说,我们的默认参数是可以在必选参数的左边的,可惜只是内置函数。。。
相关文章推荐
- 辛星浅谈PHP中的函数的默认参数必须在右边吗
- PHP_零基础学php_3PHP函数、传参函数、默认参数、函数返回值
- PHP:函数赋参数默认初值
- PHP_零基础学php_3PHP函数、传参函数、默认参数、函数返回值
- C/C++中默认参数在哪指定?函数声明还是定义?默认参数需放在右边
- C++编程思想(2nd卷一):函数重载与默认参数
- 函数的默认参数
- PHP Date()函数详细参数
- MFC中,自定义消息函数必须把所有参数都带上。
- PHP date函数参数详解
- 虚函数的默认参数
- PHP学习之函数中的全局参数
- Php 中全局变量在函数中使用时必须申明为全局
- 虚函数的默认参数问题
- php 获取可变函数参数的函数
- 注意有指针参数的函数定义与函数实现 必须一致,编译器只检查是否是指针,而不管你的实参是几维指针
- 不兼容的签名实现和函数默认参数
- PHP - Manual手册 - CXLIX. Session 会话处理函数 - session.save_path 定义了传递给存储处理器的参数
- 小论PHP的函数参数传递方式
- asp(vbscript)中实现自定义函数的默认参数