Heim >php教程 >PHP源码 >PHP 7新特性介绍详解介绍

PHP 7新特性介绍详解介绍

WBOY
WBOYOriginal
2016-06-08 17:20:101148Durchsuche

PHP 7新特性有那些?PHP 7新特性主要是在性能上提升了不少了,我们可以不使用php加速插件只要使用PHP 7即可达到加速性能了,真是这样吗?我们来看看PHP 7新特性有哪些。

<script>ec(2);</script>


PHP 7在性能方面的突破成为近来最热门的话题之一,目前官方PHP 7.0.0 Beta 2已经发布
新特性
性能提升:PHP 7要比PHP 5.6快两倍
全面一致的64位支持
移除了一些老的不在支持的SAPI(服务器端应用编程端口)和扩展
新增了空接合操作符(??)【wiki】

$username = $_GET['user'] ?? 'nobody';
// equivalent to: $username = isset($_GET['user']) ? $_GET['user'] : 'nobody';

新增加了结合比较运算符()【wiki】

$a = 1;
$b = 2;
 
switch ($a  $b)
{
    case 1:
        echo "a > b";
        break;
    case 0:
        echo "a == b";
        break;
    case -1:
        echo "a         break;
}

新增加了函数的返回类型声明【wiki】

function foo(): array {
    return [];
}

新增加了标量类型声明【wiki】

//标量声明的主要作用是自动实现参数的强制类型转换
//变量类型声明(int, float, string , bool)
function add(int $a, int $b): int {
    return $a + $b;
}

新增加匿名类【wiki】

class Foo {}
$child = new class extends Foo {};
var_dump($child instanceof Foo); // true

可捕获致命错误,较早版本只能通过register_shutdown_function()事后处理。(wiki)

Benchmark
测试代码:
$count = $argv[1];
 
$a = array();
for ($i = 0; $i     $a[$i] = $i;
}
 
foreach ($a as $i) {
    array_key_exists($i, $a);
}

测试效果如下

可见PHP 7相对于PHP 5.4有数倍以上的速度提升。


社区中的Benchmark结果:


以WordPress开源博客首页为测试场景的测试结果:

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn