PHP7.0
2017-01-20 本文已影响0人
php小白成长ing
新特性
1.变量类型
function test(int $a,string $b,array $c):int{
//code
}
2.错误异常
可以用try/catch捕捉错误
try{
non_exists_func();
}catch(EngineException $e){
echo ...错误
}
性能优化
1.zval使用栈内存
2.zend_string存储hash值,array查询不再需要重复计 算hash
3.hashtable桶内直接存数据,减少了内存申请次数, 提升了Cache命中率和内存访问速度
4.zend_parse_parameters改为宏实现,性能提升5%
5.新增加4种OPCODE, call_user_function,is_int/string/array,strlen,de fined 4个函数变为PHP OpCode指令,速度更快
6.基础类型int、float、bool等改为直接进行值拷贝, 排序算法改进,PCRE with JIT,execute_data和opline 使用全局寄存器,使用gdb4.8的PGO功能
JIT
just in time,表示运行时将指令转为二进制机器码
PHP7.0没有JIT