配列を受け取るパラメータであるかどうかを調べる

# ReflectionParameter::isArray

(PHP 5 >= 5.1.2, PHP 7, PHP 8)

ReflectionParameter::isArray — 配列を受け取るパラメータであるかどうかを調べる

警告

この関数は PHP 8.0.0 で 非推奨になります。この関数に頼らないことを強く推奨します。

配列を受け取るパラメータかどうかを調べる別の方法については、下に示す例を参照ください。

### 説明

#[\Deprecated]
public function ReflectionParameter::isArray(): bool

配列を受け取るパラメータであるかどうかを調べます。

### パラメータ

この関数にはパラメータはありません。

### 戻り値

配列を受け取るパラメータである場合に `true`、それ以外の場合に `false` を返します。

### 変更履歴

バージョン | 説明
--- | ---
8.0.0 | この関数は推奨されなくなりました。 ReflectionParameter::getType() を代わりに使うのが好ましいです。

### 例

例1 PHP 8.0.0 以降で同等のことを行うには

PHP 8.0.0 以降では、以下のコードは union の一部であった場合も含めて、配列型を宣言しているかどうかを報告します。

    <?php
    function declaresArray(ReflectionParameter $reflectionParameter): bool
    {
        $reflectionType = $reflectionParameter->getType();
        if (!$reflectionType) return false;
        $types = $reflectionType instanceof ReflectionUnionType
            ? $reflectionType->getTypes()
            : [$reflectionType];
       return in_array('array', array_map(fn(ReflectionNamedType $t) => $t->getName(), $types));
    }
    ?>

### 参考

- ReflectionParameter::isOptional() - 省略可能であるかどうかを調べる

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open