函数名称: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
类实现了Logger
和Notifier
接口,因此getInterfaceNames()
返回一个包含这两个接口名称的数组。