PHP7新特性总结

现如今,随着php的门槛越来越高,光会做不会说已经无法满足现在的面试官口味了。这不,天天用着php7,平时用着php7的语法,但是临到头不知道

对比php5有哪些新特性,着实有点尴尬了。现在呢,我们抽个时间来总结下。

1.类型的声明。

可以使用字符串(string)、整数、浮点、布尔值来声明函数的参考类型和返回值

declare(strict_types=1);  ====>  必须放在文件的第一行
function add(int $a,int $b): int{
return $a+$b;
}
echo add(1,2); ====> 输出3
echo add(1.5,2.5); =====>
抛出错误异常


2.新增操作符<=>。俗称太空船运算符

  新增加的太空船运算符(组合比较符<=>)用于比较两个表达式 $a 和 $b,如果 $a 小于、等于或大于 $b时,它分别返回-1、0或1。
   1 <=> 2    左边小于右边    输出=====>  -1

   1 <=> 1   左边等于右边    输出=====>  0   

    2 <=> 1  左边大于右边    输出=====>  1

 

3.新增操作符 ?? 。

 这个可以说对于大家而言,php7刚出的时候就已经很熟悉了 。左右相当于 isset  

 比如   

 $a  = isset($_GET['user']) ? $_GET['user] : 0;    ======>  $a = $_GET['user'] ?? 0;

 

4.define 可以定义常量数组了

define('ARR',4);    =========>   define('ARR',[10,30]);   echo ARR[0];   输出10

 

5.支持匿名函数了 

这点有点向python靠拢,python也是支持匿名函数的

python3写法:

    lambda arg1, arg2: arg1 + arg2 # arg1, arg2可以传入默认值得到arg1+arg2的合

php写法:

     $anonymous_func = function (){return '2222';};

     echo $anonymous_func();         输出=======> 2222

 

5.命名空间优化 

以前写法:

use Admin\Bar\ClassA;

use Admin\Bar\ClassB;

现在写法:

use Admin\Bar\{ClassA,ClassB}

 

常用的就是上面5点,那么废弃了哪些呢,这里我们还是描述常用的。

我们知道做微信公众号时,扫描带参二维码时,我们通常使用:

$HTTP_RAW_POST_DATA ======>  $GLOBALS['HTTP_RAW_POST_DATA']来获取数据,现在php7已经不支持了,
目前我使用的是
file_get_contents("php://input"); 来替代它了
 
posted @ 2021-10-08 19:03  龙卷风之殇  阅读(233)  评论(0)    收藏  举报