Final Class Yiisoft\Input\Http\Attribute\Parameter\UploadedFilesResolver
| Inheritance | Yiisoft\Input\Http\Attribute\Parameter\UploadedFilesResolver |
|---|---|
| Implements | Yiisoft\Hydrator\Attribute\Parameter\ParameterAttributeResolverInterface |
Resolver for {@see UploadedFiles} attribute.
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __construct() | Yiisoft\Input\Http\Attribute\Parameter\UploadedFilesResolver | |
| getParameterValue() | Yiisoft\Input\Http\Attribute\Parameter\UploadedFilesResolver |
Method Details
| public mixed __construct ( \Yiisoft\RequestProvider\RequestProviderInterface $requestProvider ) | ||
| $requestProvider | \Yiisoft\RequestProvider\RequestProviderInterface |
The request provider. |
public function __construct(
private RequestProviderInterface $requestProvider,
) {
}
| public \Yiisoft\Hydrator\Result getParameterValue ( \Yiisoft\Hydrator\Attribute\Parameter\ParameterAttributeInterface $attribute, \Yiisoft\Hydrator\AttributeHandling\ParameterAttributeResolveContext $context ) | ||
| $attribute | \Yiisoft\Hydrator\Attribute\Parameter\ParameterAttributeInterface | |
| $context | \Yiisoft\Hydrator\AttributeHandling\ParameterAttributeResolveContext | |
public function getParameterValue(
ParameterAttributeInterface $attribute,
ParameterAttributeResolveContext $context,
): Result {
if (!$attribute instanceof UploadedFiles) {
throw new UnexpectedAttributeException(UploadedFiles::class, $attribute);
}
$files = $this->requestProvider->get()->getUploadedFiles();
$name = $attribute->getName() ?? $context->getParameter()->getName();
if (!ArrayHelper::pathExists($files, $name)) {
return Result::fail();
}
return Result::success(ArrayHelper::getValueByPath($files, $name));
}
Signup or Login in order to comment.