xxxx日本护士丰满hd|亚洲av日韩av无码av欧美av|精品国产污污网站在线看免费|日日摸日日碰夜夜爽久久|国产一区二区亚洲精品

ReflectionClass::getAttributes

(PHP 8)

ReflectionClass::getAttributesGets Attributes

說(shuō)明

public ReflectionClass::getAttributes(?string $name = null, int $flags = 0): array

Returns all attributes declared on this class as an array of ReflectionAttribute.

參數

name

Filter the results to include only ReflectionAttribute instances for attributes matching this class name.

flags

Flags for determining how to filter the results, if name is provided.

Default is 0 which will only return results for attributes that are of the class name.

The only other option available, is to use ReflectionAttribute::IS_INSTANCEOF, which will instead use instanceof for filtering.

返回值

Array of attributes, as a ReflectionAttribute object.

范例

示例 #1 Basic usage

<?php
#[Attribute]
class Fruit {
}

#[Attribute]
class Red {
}

#[Fruit]
#[Red]
class Apple {
}

$class = new ReflectionClass('Apple');
$attributes $class->getAttributes();
print_r(array_map(fn($attribute) => $attribute->getName(), $attributes));
?>

以上例程會(huì )輸出:

Array
(
    [0] => Fruit
    [1] => Red
)

示例 #2 Filtering results by class name

<?php
#[Attribute]
class Fruit {
}

#[Attribute]
class Red {
}

#[Fruit]
#[Red]
class Apple {
}

$class = new ReflectionClass('Apple');
$attributes $class->getAttributes('Fruit');
print_r(array_map(fn($attribute) => $attribute->getName(), $attributes));
?>

以上例程會(huì )輸出:

Array
(
    [0] => Fruit
)

示例 #3 Filtering results by class name, with inheritance

<?php
interface Color {
}

#[Attribute]
class Fruit {
}

#[Attribute]
class Red implements Colour {
}

#[Fruit]
#[Red]
class Apple {
}

$class = new ReflectionClass('Apple');
$attributes $class->getAttributes('Colour'ReflectionAttribute::IS_INSTANCEOF);
print_r(array_map(fn($attribute) => $attribute->getName(), $attributes));
?>

以上例程會(huì )輸出:

Array
(
    [0] => Red
)

xxxx日本护士丰满hd|亚洲av日韩av无码av欧美av|精品国产污污网站在线看免费|日日摸日日碰夜夜爽久久|国产一区二区亚洲精品