declare之strict_types

  最近在代码开发中总是被要求需要在脚本第一个语句前加上 declare(strict_types=1);于是就搜集一下它的作用。

  众所周知,php是弱类型校验模式,而declare指令可以通过指定 strict_types的值(1位严格模式,0为弱类型校验模式)来控制函数的调用和返回。

影响范围:
  strict_types指令只会影响到指定使用的文件,不会影响被它include的文件。

运作方式:

  在opcode中设置一个标志位,让函数调用和返回类型检查是否符合类型约束。

示例代码:

 图一会报语法错误,而图二不会,这就是strict_types的魅力。

参考:https://blog.csdn.net/u010324331/article/details/88316692、https://blog.csdn.net/qise4868/article/details/79596119

原文地址:https://www.cnblogs.com/smallzhen/p/14398389.html