php - PHP docblock中类型提示的花括号和尖括号有什么区别?
问题描述
我看到在类型提示数组时使用的 PHP 文档块中使用了尖括号和花括号。
/**
* @return array<name:int,link:string,items:array<class:string,active:bool>>
*/
或者
/**
*@return array{name:string,active:bool}
*/
我试图在 de docblock 文档中的 docblocks 中找到有关类型提示的内容,但找不到任何东西。
谁能帮我解决这个问题。
解决方案
所以在咨询了一位同事之后,他大致解释如下:当您在 php docblock 中键入提示数组时,您使用尖括号<>
来指示数组中不同索引处的类型。您将花括号{}
用于关联数组,您可以在其中指定键值和类型值。
/**
* Only angle brackets:
* @return array<int,string,bool>
*/
比。
/**
* A combination of curly braces and angle brackets
* @return array{name:string,active:bool,items:array<int,string,bool>}
*/
对于任何有同样问题的人
推荐阅读
- python - Django Rest Framework - 在 POST 响应正文中接收主键
- amazon-web-services - 当 AWS 节点组没有出现在 CloudFormation 中并且仅在尝试删除父集群或创建新集群时似乎存在时,如何销毁它?
- laravel - CoreUi Laravel 管理模板无法使用 node-gyp@3.8.0 构建
- typescript - TypeScript:过滤从类型化回调返回的对象文字中未声明的字段
- javascript - 如何提取我的函数 JavaScript 的返回值
- python - 使用Python将图像添加到excel中的注释中
- reactjs - React - 显示一个组件,直到它完全准备好
- python-3.x - 每次迭代除以2时如何打印数字的余数(userInput)
- python - 为什么使用 Numba 时这段代码不更快?
- flutter-web - 是否可以将 OneSignal 与 Flutter-Web 一起使用?