php 语法 问题

declare (strict_types = 1);
从语法的角度分析

  1. declare是函数
  2. 里面的strict_types是常量

问题:常量怎么能赋值呢???

阅读 1.8k
2 个回答

strict_types 是php7+ 新增的指令,并非常量
declare 是结构 并非是普通函数 它是用来设定一段代码的执行指令

declare (directive)
    statement

类似的指令有

ticks
encoding

参阅php指令

官方解释declare

declare 结构用来设定一段代码的执行指令。_declare_ 的语法和其它流程控制结构相似:

declare (directive)

statement

directive 部分允许设定 declare 代码段的行为。

statement 可以理解 为 可执行的代码块 与 declare可以组合成一个复合的(稍微复杂嵌套)的代码块

strict_types官方定义为为标量(指令)的东西,实际为是opcode中设置一个标志位。

类似 echo一样 不是一个函数 是一个结构体

至于语法上面的解释,我认为这个是php本身就是独立为变量赋值外一种语法(只局限为declare)。

还坐等大佬仔细详解这块。。。我只是猜的
image.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题