ReflectionParameter::isArray

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

ReflectionParameter::isArray检查参数是否期望一个数组

警告

此函数已在 PHP 8.0.0 中弃用。强烈建议不要依赖此函数。

请参阅下面的示例以了解另一种获取此信息的方法。

描述

public ReflectionParameter::isArray(): bool

检查参数是否期望一个数组。

参数

此函数没有参数。

返回值

如果期望一个array,则返回true,否则返回false

示例

示例 #1 PHP 8.0.0 等效项

从 PHP 8.0.0 开始,以下代码将报告类型是否声明了数组,包括作为联合类型的一部分。

<?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));
}
?>

参见

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top