php7函数,声明,返回值等新特性介绍
使用...运算符定义变长参数函数(PHP5>=5.6.0,PHP7)
现在可以不依赖func_get_args(),使用...运算符来实现变长参数函数。
以上例程会输出:
$req:1;$opt:0;numberofparams:0
$req:1;$opt:2;numberofparams:0
$req:1;$opt:2;numberofparams:1
$req:1;$opt:2;numberofparams:2
$req:1;$opt:2;numberofparams:3
使用...运算符进行参数展开(PHP5>=5.6.0,PHP7)
在调用函数的时候,使用...运算符,将数组和可遍历对象展开为函数参数。在其他编程语言,比如Ruby中,这被称为连接运算符,。
以上例程会输出:
6
usefunction以及useconst(PHP5>=5.6.0,PHP7)
use运算符被进行了扩展以支持在类中导入外部的函数和常量。对应的结构为usefunction和useconst。
以上例程会输出:
42
Name\Space\f
debugInfo()(PHP5>=5.6.0,PHP7)
加入debugInfo(),当使用var_dump()输出对象的时候,可以用来控制要输出的属性和值。
prop=$val; } publicfunctiondebugInfo(){ return[ 'propSquared'=>$this->prop**2, ]; } } var_dump(newC(42)); ?>
以上例程会输出:
object(C)#1(1){ ["propSquared"]=> int(1764) }
标量类型声明(PHP7)
标量类型声明有两种模式:强制(默认)和严格模式。现在可以使用下列类型参数(无论用强制模式还是严格模式):字符串(string),整数(int),浮点数(float),以及布尔值(bool)。它们扩充了PHP5中引入的其他类型:类名,接口,数组和回调类型。
以上例程会输出:
int(9)
要使用严格模式,一个declare声明指令必须放在文件的顶部。这意味着严格声明标量是基于文件可配的。这个指令不仅影响参数的类型声明,也影响到函数的返回值声明(参见返回值类型声明,内置的PHP函数以及扩展中加载的PHP函数)
返回值类型声明(PHP7)
PHP7增加了对返回类型声明的支持。类似于参数类型声明,返回类型声明指明了函数返回值的类型。可用的类型与参数声明中可用的类型相同。
以上例程会输出:
Array ( [0]=>6 [1]=>15 [2]=>24 )null合并运算符(PHP7)
由于日常使用中存在大量同时使用三元表达式和isset()的情况,我们添加了null合并运算符(??)这个语法糖。如果变量存在且值不为NULL,它就会返回自身的值,否则返回它的第二个操作数。
太空船操作符(组合比较符)(PHP7)
太空船操作符用于比较两个表达式。当$a小于、等于或大于$b时它分别返回-1、0或1。比较的原则是沿用PHP的常规比较规则进行的。
1;//0 echo1<=>2;//-1 echo2<=>1;//1 //Floats echo1.5<=>1.5;//0 echo1.5<=>2.5;//-1 echo2.5<=>1.5;//1 //Strings echo"a"<=>"a";//0 echo"a"<=>"b";//-1 echo"b"<=>"a";//1 ?>通过define()定义常量数组(PHP7)
Array类型的常量现在可以通过define()来定义。在PHP5.6中仅能通过const定义。
总结
以上所述是小编给大家介绍的php7函数,声明,返回值等新特性,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!