You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP语言中?array语法代表什么含义?

?类型前缀语法含义说明

你看到的代码属于PHP语法,?array是PHP 7.1及以上版本支持的可空类型声明语法,具体作用如下:

  • 前缀问号表示对应的属性、函数参数或函数返回值,除了可以是声明的指定类型值外,还允许取值为null
  • 你给出的示例private static ?array $labels = null;,就表示$labels这个静态属性既可以存储数组类型的值,也可以赋值为null,代码里直接给了默认值null是符合类型要求的。

如果去掉问号直接写private static array $labels = null;,运行时会抛出类型错误,因为非可空的array类型声明不允许赋值null,必须传入合法的数组值。
这个语法是PHP引入强类型校验机制后增加的语法糖,不需要额外的运行时判断就能明确标注可空的类型场景,可读性和安全性都比旧版本用注释标注类型更高。

内容的提问来源于stack exchange,提问作者jdrsantos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 20:15:03