当前位置:首页 > PHP文摘 > 列表

php7.1新特性简单介绍

发布:smiling 来源: PHP粉丝网  添加日期:2018-09-19 09:25:33 浏览: 评论:0 

Allow specifying keys in list()

Square bracket syntax for array destructuring assignment

下面这个支持效果,还是不错的:

  1. list($a$b) = array($b$a); 
  2. [$a$b] = [$b$a]; 
  3.  
  4. foreach ($points as ["x" => $x"y" => $y]) { 
  5.     var_dump($x$y); 

这个在遍历的时候会很方便,也很强大,感觉这两个特性会使数组使用便捷一些.

Nullable Types

这个就是一个简写的标量或null,用处有,但感觉不大

Generalize support of negative string offsets

这个特性好,可以简化一些简单的字符串处理

Support Class Constant Visibility

暂时想不到太大用处,只是将类常量完善了

Void Return Type

这个限制函数返回值有用

同时希望miexd,number什么的也尽快出来

Catching Multiple Exception Types

多cacth异常感觉没什么用,可能还是不太会用异常吧

剩下的都是比较明显的,没啥好讨论的改进,所以就一块儿说吧

字符串索引可使用负数

  1. $str='abcdef'
  2. var_dump($str[-2]); // => string(1) "e" 
  3.  
  4. $str{-3} = '.'
  5. var_dump($str);        // => string(6) "abc.ef" 
  6.  
  7. var_dump(isset($str{-4}));    // => bool(true) 
  8.  
  9. var_dump(isset($str{-10}));    // => bool(false) 

Void 返回类型

如果一个方法被设定成返回 void 类型,那么它将不能返回任何值

  1. function foo(): void 
  2.     return 1; // 报错,不能有返回 
  3.  
  4. function foo(): void 
  5.     return// 正确 
  6.  
  7. function foo(): void 
  8.     // 也正确 

但要注意 null 是不能返回的:

  1. function foo(): void 
  2.     return null; // 这也是不行的! 

最后,如果子类要覆盖父类的某个返回 void 的方法,返回类型是不可以更改的。

类常量可见性设置:

  1. class Token 
  2.     // 默认是 public 属性 
  3.     const PUBLIC_CONST = 0; 
  4.  
  5.     // 可添加可见性设置 
  6.     private const PRIVATE_CONST = 0; 
  7.     protected const PROTECTED_CONST = 0; 
  8.     public const PUBLIC_CONST_TWO = 0; 
  9.  
  10.     // 所有常量只能设置一次可见性 
  11.     // 也可以这么写 
  12.     private const FOO = 1, BAR = 2; 

多种 Exception 同时 Catch:

  1. try { 
  2.    // Some code... 
  3. } catch (ExceptionType1 | ExceptionType2 $e) { 
  4.    // 如果有不同的异常想用一种方式来处理的时候,就很有用了 
  5. } catch (\Exception $e) { 
  6.    // ... 
好啦,PHP 7.1 的新特性就是这些了,大家有没有很期待呢?

Tags: 特性

分享到: