关于PHP中func_get_args()、func_get_arg()、func_num_args()的使用(PHP函数重载)
2015-10-08 21:54
666 查看
本人这几天刚接触JS,当学到argument对象的时候,联想到了PHP中的函数的重载,其中比较关键的三个函数func_get_args()、func_get_arg()、func_num_args()的用法。
顾名思义,这三个函数开头都是func,因此只能用在函数内部;否则会报错(只能用在函数里面!!);
现在回到正在学的JS吧:
1、在JS函数体里面可以通过arguments对象接收传递过来的参数。
如:
2、arguments对象的length属性可以得到所有参数的数量
3、实现参数个数不定的加法:
顾名思义,这三个函数开头都是func,因此只能用在函数内部;否则会报错(只能用在函数里面!!);
func_get_args(); //该函数可以以数组的形式返回我们传递的所有参数 func_get_arg(n-1); //该函数返回传递过去的第 n 个参数,因为索引是从0开始的 func_num_args(); //该函数返回传递的参数的个数 //下面,我用一个例子来试验一下: function test(){ //注意,该函数没有形参 $args_num = func_num_args(); echo "你传过来".$args_num."个参数。"."<br/>"; $arg_arr = func_get_args(); for($i = 0; $i < $args_num; $i ++){ echo "第".$i+1."个参数是".$arg_arr[$i]."<br/>"; } echo "第".3."个参数是".func_get_arg(2)."<br/>"; } //调用函数 test(10,20,30); //输出: /* 你传过来3个参数。 第1个参数是10 第2个参数是20 第3个参数是30 第3个参数是30 */
现在回到正在学的JS吧:
1、在JS函数体里面可以通过arguments对象接收传递过来的参数。
如:
function test(){ return arguments[0] + ' | ' + arguments[1]; } alert(test(10,20,30,40)); //返回 10 | 20
2、arguments对象的length属性可以得到所有参数的数量
function test(){ return arguments.length; } alert(test(10,20,30)); //返回 3
3、实现参数个数不定的加法:
function add(){ var sum = 0; for(var i = 0; i < arguments.length; i ++){ sum += arguments[i]; } return sum; } alert(test(10,20,30)); //返回60(是不是很熟悉?其实PHP完全可以实现的!)
相关文章推荐
- php 通过txt文件将数据装填入数据库
- PHP数组的操作
- Thinkphp控制volist的循环次数,限制只显示部分数据
- 此文为转载,虽然写的是PHP,但是思路同样值得javaer参考!
- thinkphp模板页限制标题字数
- thinkphp getField
- thinkphp 常看tp拼接的sql语句
- 4000 Yii2中系统定义的常用路径别名,如果获取web的url
- php CI框架入门
- PHP中数字千分位逗号分隔函数number_format()
- php允许跨域请求
- PHP echo, print, printf, sprintf函数的区别和使用
- php写内容到日志log文件
- PHP MYSQL中的ALTER命令
- thinkphp 3.2控制器绑定改变路由
- PHP 实现MySQL事务操作
- 6. PHP 正则表达式
- Rogue Wave 宣布收购 “PHP推动者” Zend Technologies
- Yii 渲染与布局(渲染页面的两种方式)
- RTP协议