English | 简体中文 | 繁體中文
查询

ReflectionNamedType::isBuiltin()函数—用法及示例

「 检查给定的命名类型是否为内置类型 」


函数:ReflectionNamedType::isBuiltin()

适用版本:PHP 7.0.0 及以上版本

用法:ReflectionNamedType::isBuiltin() 方法用于检查给定的命名类型是否为内置类型。

语法:public ReflectionNamedType::isBuiltin(): bool

参数:无

返回值:如果命名类型是内置类型,则返回 true;否则返回 false。

示例:

class MyClass {}
$reflectionClass = new ReflectionClass('MyClass');
$constructor = $reflectionClass->getConstructor();
$parameters = $constructor->getParameters();

foreach ($parameters as $parameter) {
    $type = $parameter->getType();

    if ($type instanceof ReflectionNamedType) {
        $typeName = $type->getName();
        $isBuiltin = $type->isBuiltin();

        echo "Parameter '{$parameter->getName()}' has type '{$typeName}'";
        echo $isBuiltin ? " (builtin type)" : " (custom type)";
        echo PHP_EOL;
    }
}

输出:

Parameter 'arg1' has type 'int' (builtin type)
Parameter 'arg2' has type 'string' (builtin type)
Parameter 'arg3' has type 'MyClass' (custom type)

上述示例中,我们创建了一个名为 MyClass 的类,并获取其构造函数的参数。然后,我们使用 ReflectionNamedType 对象的 isBuiltin() 方法来判断参数的类型是否为内置类型。如果是内置类型,则输出 "(builtin type)",否则输出 "(custom type)"。在这个例子中,我们的构造函数有三个参数,其中两个是内置类型 (int 和 string),另一个是自定义类型 (MyClass)。

补充纠错
热门PHP函数
分享链接