php 8.2: ReflectionIntersectionType::getTypes returns an array of ReflectionNamedType. For now, PHP's DNF implementation does not allow union types nested into intersection types.
(PHP 8 >= 8.1.0)
ReflectionIntersectionType::getTypes — 交差型に含まれている型を返す
この関数にはパラメータはありません。
ReflectionType オブジェクトの配列を返します。
例1 ReflectionIntersectionType::getTypes() の例
<?php
function someFunction(Iterator&Countable $value) {}
$reflectionFunc = new ReflectionFunction('someFunction');
$reflectionParam = $reflectionFunc->getParameters()[0];
var_dump($reflectionParam->getType()->getTypes());
?>
上の例の出力は、 たとえば以下のようになります。
array(2) { [0] => class ReflectionNamedType#4(0) { } [1] => class ReflectionNamedType#5(0) { } }
php 8.2: ReflectionIntersectionType::getTypes returns an array of ReflectionNamedType. For now, PHP's DNF implementation does not allow union types nested into intersection types.