php7中的新特性与废弃的特性,PHP7.4 新特性和废弃的功能

PHP7.4新特性和抛弃的功能总结

PHP7.4新特性

PHP7.4上月28号现已发布了。又带来了一些新特性。能够让我们的代码写的更少了。

1.属性添加限制类型

classUser{

publicint$age;

publicstring$name

}

$user=newUser();

$user->age=10;

$user->name=”张三”;

//error

$user->age=”zhang”;//需要传递int

2.箭头函数

这个特性基本上参阅Js的ES6的语法。能够让我们的代码写的更少。假如你的代码有fn这个函数。可能会抵触

$factor=10;

$nums=array_map(fn($n)=>$n*$factor,[1,2,3]);//[10,20,30]

//之前的写法

$nums=array_map(function($num)use($factor){

return$num*$factor;

},[1,2,3])0e0e6dad9c1e63be13fd92d9e79b219e.png

3.有限回来类型协变与参数类型逆变

仅当运用主动加载时,才供给彻底协变/逆变支撑。在单个文件中,只能运用非循环类型引证,由于所有类在被引证之前都必须可用。

classA{}

classBextendsA{}

classProducer{

publicfunctionmethod():A{}

}

classChildProducerextendsProducer{

publicfunctionmethod():B{}

}

?>

4.数组解包

运用展开运算符…解包数组。这个特性,应该又是从js那吸收过来的。看例子

$parts=[‘apple’,’pear’];

$fruits=[‘banana’,’orange’,…$parts,’watermelon’];//[‘banana’,’orange’,’apple’,’pear’,’watermelon’];

//老的写法

$fruits=array_merge([‘banana’,’orange’],$parts,[‘watermelon’]);

5.空合并运算符赋值

$array[‘key’]??=computeDefault();

//老的写法

if(!isset($array[‘key’])){

$array[‘key’]=computeDefault();

}

?>

6.数值文字分隔符

数字文字能够在数字之间包括下划线。

6.674_083e-11;//float

299_792_458;//decimal

0xCAFE_F00D;//hexadecimal

0b0101_1111;//binary

?>

7.答应从__toString()抛出反常

现在答应从__toString()引发反常,以往这会导致丧命过错,字符串转化中现有的可恢复丧命过错已转化为Error反常。

8.Filter

新增FILTER_VALIDATE_FLOAT

filter_var(1.00,FILTER_VALIDATE_FLOAT);

filter.filters.validate

9.strip_tags支撑数组

strip_tags($str,[‘p’,’a’,’div’]);

//老的写法

strip_tags($str,”

“);

抛弃的特性

1.没有显式括号的嵌套三元运算符

1?2:3?4:5;//deprecated

(1?2:3)?4:5;//ok

1?2:(3?4:5);//ok

?>

面试的时候,终于不必忧虑问你这个结果是啥了。其实生产中,我们也不会这么写。

2.花括号拜访数组索引

$arr=[“a”=>”111″];

$index=”a”;

$arr{$index}//抛弃

$arr[$index];

说实话,仍是第一次见到,抛弃了,阐明我们不会这么用。

3.real和is_real实数

$num=””;

$a=(real)$num;//抛弃

$a=(float)$num;

4.parent关键词在没父类的类中运用

在没有父类的类中运用parent会出现编译过错。

classTest{

publicfunctionindex()

{

returnparent::index();//编译过错

}

}

5.money_format函数

money_format被抛弃,运用numberFormater替换

6.移除的拓展

1.Firebird/Interbase

2.Recode

3.WDDX

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值