Skip to content

トップ型、ボトム型

mixed

これはPHPの型システムにおける トップ型 であり、型情報の欠如を表します。Psalmは reportMixedIssues フラグがオンになっているとき、または Level 1 の場合に mixed 型について警告します。

never

docblockでは no-return または never-return としてエイリアスを付けることができます。注意:これは以前 Psalm に存在していた古い empty 型に取って代わりました。

これはPHPの型システムにおける ボトム型 です。可能な値を持たない型を表すために使用されます。これは複数のケースで発生する可能性があります:

  • PHP 8.1 の実際の never 型(古いバージョンではdocblockで使用できます)。この型は、常に例外をスローするか、常に exit() する関数の戻り値型として使用できます。
  • 可能なすべての型が除外されたユニオン型。(例えば、変数が string|int で、条件内で is_bool() チェックを行う場合、その条件内での変数の型は never になります。なぜなら、その条件に入ることは決してないからです)
  • 今後くる型のプレースホルダーを表すこともできます - 良い例は空の配列 [] の型で、Psalm はこれを array<never, never> と型付けします。配列の内容は空なので、どんな内容でも受け入れることができます
  • 上の行と同じコンテキストで、まだ定義されていないテンプレートに対しても発生する可能性があります

ユーザーノート