PHP Conference Japan 2024

ReflectionNamedType::isBuiltin

(PHP 7, PHP 8)

ReflectionNamedType::isBuiltin检查它是否为内置类型

描述

public ReflectionNamedType::isBuiltin(): bool

检查类型是否为 PHP 中的内置类型。内置类型是任何不是类、接口或特性的类型。

参数

此函数没有参数。

返回值

如果它是内置类型,则为true,否则为false

示例

示例 #1 ReflectionNamedType::isBuiltin() 示例

<?php
class SomeClass {}

function
someFunction(string $param, SomeClass $param2, stdClass $param3) {}

$reflectionFunc = new ReflectionFunction('someFunction');
$reflectionParams = $reflectionFunc->getParameters();

var_dump($reflectionParams[0]->getType()->isBuiltin());
var_dump($reflectionParams[1]->getType()->isBuiltin());
var_dump($reflectionParams[2]->getType()->isBuiltin());

以上示例将输出

bool(true)
bool(false)
bool(false)

请注意,ReflectionNamedType::isBuiltin() 方法不区分内部类和自定义类。要进行此区分,应在返回的类名上使用ReflectionClass::isInternal() 方法。

参见

添加注释

用户贡献的笔记 2 条笔记

9
mndevel at gmail dot com
3 年前
我找不到符合内置条件的列表。以下是我目前所掌握的信息
字符串
浮点数
布尔值
整数
可迭代的(迭代器反映为类型可迭代的)
混合
数组

这些不符合内置条件
闭包
Stringable
生成器
可遍历的
可序列化的
可抛出的
迭代器聚合
数组访问
弱引用
JsonSerializeable
2
yarns_purport0n at icloud dot com
2 年前
内置类型()是
- `array`
- `callable`
- `bool`
- `float`
- `int`
- `string`
- `iterable`
- `object`
- `mixed`

注意:根据https://php.net/language.types.declarations#language.types.declarations.base中的列表进行测试。

`self` & `parent` 未包含在内。
To Top