一、PHP7的新特性
返回值类型声明
类型声明有两种模式:
- 弱类型校验模式(默认):当传入的参数不符合声明类型时,会首先尝试转换类型。
- 严格类型校验模式:当传入的参数不符合声明类型时,直接报错。
声明严格模式的语法:
declare(strict_types=1); //1严格类型校验模式,0弱类型校验模式
int,float,string,bool,array,class,interface,callable
array,class,interface,callable
----------以下均为PHP7+新特性----------
可空类型:在参数或返回值类型声明前面加上“?”,表示参数值或返回值要么是null,要么是声明的类型。
<?php
function 函数名(?paraType ...$variable) : ?returnType
{
#code...
}
注:参数类型和返回值类型可以不同时为可空类型,但当参数值为 null 时,则参数和返回值类型必须同时为可空类型。
二、PHP7程序的执行过程
1.PHP代码经过词法分析转换为有意义的Token;
2.Token经过语法分析生成AST(Abstract Synstract Syntax Tree,抽象语法树);
3.AST生成对应的opcode,被虚拟机执行。
三、PHP7的源码结构
以上内容希望帮助到大家,更多PHP大厂PDF面试文档,PHP进阶架构视频资料,PHP精彩好文可以关注公众号:PHP开源社区,或者访问:
精华PHP技术文章整理合集——PHP框架篇
精华PHP技术文合集——微服务架构篇
精华PHP技术文合集——分布式架构篇
精华PHP技术文合集——高并发场景篇
精华PHP技术文章整理合集——数据库篇
作者:呦呦鹿鸣
来源:https://www.cnblogs.com/sunshineliulu/p/11516851.html