PHP5.6新增加的可变函数参数用法分析
本文实例讲述了PHP5.6新增加的可变函数参数用法。分享给大家供大家参考,具体如下:
今天无事,看了下PHP手册。发现PHP版本更新增加不少东西。下面就说说其中的PHP5.6更新中新增加的可变函数参数。
代码1:
function sum(...$numbers) { $acc = 0; foreach( $numbers as $number ) { $acc += $number; } return $acc; } echo sum(1,2,3,4);
代码1结果:
10
代码1解析:
方法函数从PHP5.6开始,函数参数可以使用三个点省略。传递的参数在函数方法中以数组的形式操作。
代码2:
function sumNumber($a,$b ) { echo $a + $b; echo "\n"; } sumNumber(...[1,2]); $a = [1,2]; sumNumber(...$a);
代码2结果:
3 3
代码2解析:
调用时可以使用三个点加数组的方式,不影响正常使用。
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php常用函数与技巧总结》、《php字符串(string)用法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《PHP数组(Array)操作技巧大全》
希望本文所述对大家PHP程序设计有所帮助。
相关推荐
-
php 获取可变函数参数的函数
func_num_args() 返回传递给该函数参数的个数 func_get_arg($arg_num) 取得指定位置的参数值,$arg_num位置index从0开始n-1. func_get_args() 返回包含所有参数的数组
-
PHP可变函数的使用详解
PHP 支持可变函数的概念.这意味着如果一个变量名后有圆括号,PHP 将寻找与变量的值同名的函数,并且尝试执行它.可变函数可以用来实现包括回调函数,函数表在内的一些用途. 变量函数不能用于语言结构,例如 echo() ,print() ,unset() ,isset() ,empty() ,include() ,require() 以及类似的语句.需要使用自己的包装函数来将这些结构用作变量函数. Example #1 可变函数示例 复制代码 代码如下: <?phpfunction foo ()
-
解析PHP可变函数的经典用法
复制代码 代码如下: <?phpfunction map($fun, $list,$params=array()){ $acc=NULL; $last=array_push($params, NULL,$acc)-1; foreach($list as $params[$last-1]){ //第一次见这种写法感觉很神奇 $params[$last]=call_user_func_array($fun , $params ); } $acc=
-
php之可变函数的实例详解
php之可变函数的实例详解 php的可变函数,今天大概的了解下,是看php手册总结的,觉得用处不大: PHP 支持可变函数的概念.这意味着如果一个变量名后有圆括号,PHP 将寻找与变量的值同名的函数,并且尝试执行它.可变函数可以用来实现包括回调函数,函数表在内的一些用途. 可变函数不能用于例如 echo,print,unset(),isset(),empty(),include,require 以及类似的语言结构.需要使用自己的包装函数来将这些结构用作可变函数. class Foo { func
-
PHP可变函数学习小结
在上篇文章给大家介绍了php可变变量,今天通过本篇文章给大家介绍php可变函数,具体详情如下. PHP 支持可变函数的概念.这意味着如果一个变量名后有圆括号,PHP 将寻找与变量的值同名的函数,并且尝试执行它.可变函数可以用来实现包括回调函数,函数表在内的一些用途. 可变函数不能用于例如 echo,print,unset(),isset(),empty(),include,require 以及类似的语言结构.需要使用自己的包装函数来将这些结构用作可变函数. Example #1 可变函数示例 <
-
PHP5.6新增加的可变函数参数用法分析
本文实例讲述了PHP5.6新增加的可变函数参数用法.分享给大家供大家参考,具体如下: 今天无事,看了下PHP手册.发现PHP版本更新增加不少东西.下面就说说其中的PHP5.6更新中新增加的可变函数参数. 代码1: function sum(...$numbers) { $acc = 0; foreach( $numbers as $number ) { $acc += $number; } return $acc; } echo sum(1,2,3,4); 代码1结果: 10 代码1解析: 方法
-
PHP5.5新特性之yield理解与用法实例分析
本文实例讲述了PHP5.5新特性之yield理解与用法.分享给大家供大家参考,具体如下: yield生成器是php5.5之后出现的,yield提供了一种更容易的方法来实现简单的迭代对象,相比较定义类实现 Iterator 接口的方式,性能开销和复杂性大大降低. yield生成器允许你 在 foreach 代码块中写代码来迭代一组数据而不需要在内存中创建一个数组. 使用示例: /** * 计算平方数列 * @param $start * @param $stop * @return Generat
-
Python Pandas pandas.read_sql_query函数实例用法分析
Pandas是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的.Pandas 纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具.Pandas提供了大量能使我们快速便捷地处理数据的函数和方法.你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一.本文主要介绍一下Pandas中read_sql_query方法的使用. pandas.read_sql_query(sql,con,index_col = None,coerce_float =
-
Python内置函数reversed()用法分析
本文实例讲述了Python内置函数reversed()用法.分享给大家供大家参考,具体如下: reversed()函数是返回序列seq的反向访问的迭代器.参数可以是列表,元组,字符串,不改变原对象. 1>参数是列表 >>> l=[1,2,3,4,5] >>> ll=reversed(l) >>> l [1, 2, 3, 4, 5] >>> ll <listreverseiterator object at 0x06A9E9
-
JavaScript函数式编程(Functional Programming)组合函数(Composition)用法分析
本文实例讲述了JavaScript函数式编程(Functional Programming)组合函数(Composition)用法.分享给大家供大家参考,具体如下: 组合(Composition)函数,就是把两个或以上的函数组合到一块儿,整成一个新的函数.我找到了一个很好的例子,很好地解释了组合函数这个概念. 比如一个应用主要是记录一下日常的花销(expenses),应用里的数据看起来像这样: const expenses = [ { name: '租金', price: 3000, type:
-
AngularJS中一般函数参数传递用法分析
本文实例讲述了AngularJS中一般函数参数传递用法.分享给大家供大家参考,具体如下: 1. 模型参数 直接使用变量名,不要加引号 <!doctype html> <html ng-app="passAter"> <head> <meta charset="utf-8"/> </head> <body> <div ng-controller="passCtrl">
-
PHP通过引用传递参数用法分析
本文实例讲述了PHP通过引用传递参数用法.分享给大家供大家参考,具体如下: 先看一个手册上的示例: <?php function add_some_extra(&$string) // 引入变量,使用同一个存储地址 { $string .= 'and something extra.'; } $str = 'This is a string, '; add_some_extra($str); echo $str; // outputs 'This is a string, and somet
-
PHP函数import_request_variables()用法分析
本文实例分析了PHP函数import_request_variables()用法.分享给大家供大家参考,具体如下: import_request_variables 函数可以在 register_global = off 时,把 GET/POST/Cookie 变量导入全局作用域中. 描述 bool import_request_variables ( string types [, string prefix]) 将 GET/POST/Cookie 变量导入到全局作用域中.如果你禁止了 reg
-
Yii框架函数简单用法分析
本文实例讲述了Yii框架函数简单用法.分享给大家供大家参考,具体如下: 1.redict return $this->redirect(['login']); redict其实是对于以下的封装 等同于 $response=Yii::app->response(); $response->headers->add('location','www.baidu.com'); 2.save 第一个参数是执行验证,第二个参数是指的那个字段(空的话 就保存全部) 如果是一个两个的话 必须知
随机推荐
- 详解vue2.0 transition 多个元素嵌套使用过渡
- 详解Ruby中的单件方法和单件类
- 防木马随程序启动的一个方法
- CCTV英语专用语
- Android多功能时钟开发案例(基础篇)
- 基于Java字符串 "==" 与 "equals" 的深入理解
- C#基础之数据类型转换
- Asp.net生成Excel文件并下载(更新:解决使用迅雷下载页面而不是文件的问题)
- C#中GridView动态添加列的实现方法
- 用文本文件实现的动态实时发布新闻的程序
- 我常用的几个类
- Java类的定义以及执行顺序学习教程
- 如何通过ASP管理NT帐号
- ADO.NET 连接数据库字符串小结(Oracle、SqlServer、Access、ODBC)
- 用ASP VBS xmlhttp adodbstream下载和保存图片的代码
- Android开发设置RadioButton点击效果的方法
- jQuery表单美化插件jqTransform使用详解
- 基于ios中的流状态的定义分析
- 利用Java Set 去除重复object的方法
- Ubuntu中为Android系统上实现内置C可执行程序测试Linux内核驱动程序