多行PHP属性声明中允许单行注释吗?是否有官方文档记载?
PHP 属性声明里加单行注释的官方依据
这个特性是合法的,而且能在PHP官方文档的通用语法规则里找到依据:
- PHP的属性(Attribute)参数列表属于表达式语法范畴,而PHP的注释(不管是单行
//还是多行/* */)在语法上被视为空白字符——任何允许出现空白的位置,都可以插入注释。属性参数之间的换行、空格位置本来就允许放空白,自然也支持加注释。 - 官方文档里没有单独把“属性里能加注释”拿出来单独讲,但这是通用语法规则的延伸。就像你在数组定义里插注释不会报错一样,属性参数里插注释也是同一个逻辑:
// 数组里插注释完全合法 $config = [ 'name' => 'test', // 这里是注释 'status' => true ];
你提供的那段带注释的属性代码能正常运行,就是因为解析器把注释当成空白跳过了,不会影响属性的正常解析。
内容的提问来源于stack exchange,提问作者joachim
相关产品推荐
相关产品推荐

