型システムPHP は部分型の関係を満たしつつ(behavioral subtyping)、 名前ベースで一致を調べる型システム(nominal type system) を採用しています。 部分型の関係はコンパイル時にチェックされますが、 型の検証は実行時に動的に行われます。 PHP の型システムは、様々な基本型(atomic type)をサポートしており、 それらを組み合わせてより複雑な型を作ることができます。 そうした複雑な型の一部については、 型宣言 時に記述できます。 基本型基本型の一部は言語に強く統合されている組み込み型であり、 ユーザー定義の型として再現できません。 基本型の一覧は以下になります:
複合型複数の基本型を組み合わせて、複合型を作ることができます。 PHP では、次のやり方で型を組み合わせることができます:
交差型
交差型 は、宣言した複数のクラス型を(単一ではなく)
すべて満たす値を受け入れることができます。
交差型を構成する個別の型は、 union 型
union 型は、ひとつではなく、
複数の異なる型を値として受け入れることができます。
union 型を構成する個別の型は、 型のエイリアス
PHP は型のエイリアスをふたつサポートしています。
mixed と iterable です。
それぞれ、
union 型
|