- 抽象语法树(编译器与执行器隔离开)
- Native TLS(线程局部存储)
- 指定函数参数、返回值类型
- zval结构的变化(zval是PHP变量的内部结构,也是PHP内核中最为普遍的一个结构,PHP7将引用计数转移到了具体的value中,zval结构大小由24byte减少到16byte,减低了资源占用)
- 异常处理(PHP5.x中很多操作直接抛出异常,PHP7中将多数错误改为异常抛出,可通过Throwable异常类型进行捕获,是错误处理更加可控)
- HashTable的变化(结构大小从72byte减少到56byte,数组元素Bucket结构从72byte减少到32byte)
- 执行器(执行器调度函数execute_ex(),执行期间频繁的用到execute_data、opline两个变量,在PHP5中是由execute_ex()通过参数的方式传递,在PHP7中通过寄存器存储,避免了传参导致的频繁出入栈,同时寄存器比内存的访问速度快,性能提升5%)
- 新的参数解析方式