0 follower

Final Class Yiisoft\Hydrator\Internal\ReflectionFilter

InheritanceYiisoft\Hydrator\Internal\ReflectionFilter

Method Details

Hide inherited methods

filterParameters() public static method

public static array<string, ReflectionParameter> filterParameters ( ReflectionParameter[] $parameters )
$parameters ReflectionParameter[]

                public static function filterParameters(array $parameters): array
{
    $result = [];
    foreach ($parameters as $parameter) {
        if (!empty($parameter->getAttributes(SkipHydration::class))) {
            continue;
        }
        $result[$parameter->getName()] = $parameter;
    }
    return $result;
}

            
filterProperties() public static method

public static array<string, ReflectionProperty> filterProperties ( object $object, ReflectionClass $reflectionClass, array $propertyNamesToFilter = [] )
$object object
$reflectionClass ReflectionClass
$propertyNamesToFilter array

                public static function filterProperties(
    object $object,
    ReflectionClass $reflectionClass,
    array $propertyNamesToFilter = []
): array {
    $result = [];
    foreach ($reflectionClass->getProperties() as $property) {
        if ($property->isStatic()) {
            continue;
        }
        if ($property->isReadOnly() && $property->isInitialized($object)) {
            continue;
        }
        $propertyName = $property->getName();
        if (in_array($propertyName, $propertyNamesToFilter, true)) {
            continue;
        }
        if (!empty($property->getAttributes(SkipHydration::class))) {
            continue;
        }
        $result[$propertyName] = $property;
    }
    return $result;
}