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开源博客首页为测试场景的测试结果:
