查询

ReflectionClass::getInterfaceNames()函数—用法及示例

「 获取类的所有接口名称 」


函数名称:ReflectionClass::getInterfaceNames()

适用版本:PHP 5, PHP 7, PHP 8

函数描述:该函数用于获取类的所有接口名称。

用法:

$reflection = new ReflectionClass('ClassName');
$interfaceNames = $reflection->getInterfaceNames();

参数说明:

  • ClassName:要获取接口名称的类名。

返回值:

  • 一个包含类实现的所有接口名称的数组。

示例: 假设有以下接口和类定义:

interface Logger {
    public function log($message);
}

interface Notifier {
    public function sendNotification($message);
}

class EmailNotifier implements Notifier {
    public function sendNotification($message) {
        echo "Sending email notification: " . $message;
    }
}

class User implements Logger, Notifier {
    public function log($message) {
        echo "Logging message: " . $message;
    }

    public function sendNotification($message) {
        echo "Sending notification: " . $message;
    }
}

我们可以使用ReflectionClass::getInterfaceNames()来获取User类实现的所有接口名称:

$reflection = new ReflectionClass('User');
$interfaceNames = $reflection->getInterfaceNames();

print_r($interfaceNames);

输出结果:

Array
(
    [0] => Logger
    [1] => Notifier
)

以上示例中,User类实现了LoggerNotifier接口,因此getInterfaceNames()返回一个包含这两个接口名称的数组。

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