PhpStorm は PHP を主な対象として JavaScript 等の Web でよく使われる言語に対応している IDE です。
これの 2021.2 バージョンがリリースされました。主な更新内容は次から見れます。
PhpStorm 2021.2: Generics, Enums, Array Shapes, Inspections, Refactorings, and More | The PhpStorm Blog
What’s New in PhpStorm 2021.2
今回の更新の中で私的に最も重要なのは Array shapes 記法への対応です。
If there are object-like arrays in your code, you can now define their structure with this PHPDoc annotation: array{key: type, key: type, …}.
PhpStorm provides code completion for such annotated arrays, reducing the time you spend on routine typing and protecting you from mistakes.
The support is limited to one-line array shape definitions. For larger structures, it is often better to use real objects and classes.
コードの中にオブジェクトのような配列(連想配列)がある場合、PHPDocのアノテーションであるarray{key: type, key: type, …}でその構造を定義できるようになりました。
PhpStormは、このようなアノテーション付きの配列のコード補完を提供し、 定型的な入力に費やす時間を減らし、ミスから保護します。
サポート対象は1行の配列形状定義に限られます。より大きな構造の場合は、実際のオブジェクトやクラスを使用した方が良い場合が多いです。
単純な一次元の連想配列についてコメントでばっちり対応できるようになりました。これは次のように連想配列の形式をコメントすると、そのコメントの形式に応じて予測変換や型の定義をしてくれます(型は mixed が混じっていささか曖昧ですが)。
注意すべきはarray{id: string, b: array{id:string, name:string}}
の様な多次元連想配列定義には対応していない点です。あまり複雑ならばクラスを新たに定義して、それを用いた方が安全とのことです。