ImageFile
class ImageFile extends File
Traits
Properties
| static protected array | $macros | The registered string macros. |
from Macroable |
| protected array | $allowedMimetypes | The MIME types that the given file should match. This array may also contain file extensions. |
from File |
| protected array | $allowedExtensions | The extensions that the given file should match. |
from File |
| protected int|null | $minimumFileSize | The minimum size in kilobytes that the file can be. |
from File |
| protected int|null | $maximumFileSize | The maximum size in kilobytes that the file can be. |
from File |
| protected string|null | $encoding | The required file encoding. |
from File |
| protected array | $customRules | An array of custom rules that will be merged into the validation rules. |
from File |
| protected array | $messages | The error message after validation, if any. |
from File |
| protected array | $data | The data under validation. |
from File |
| protected Validator|null | $validator | The validator performing the validation. |
from File |
| static null|array|callable|string | $defaultCallback | The callback that will generate the "default" version of the file rule. |
from File |
Methods
Apply the callback if the given "value" is (or resolves to) truthy.
Apply the callback if the given "value" is (or resolves to) falsy.
Mix another object into the class.
Dynamically handle calls to the class.
Dynamically handle calls to the class.
Set the default callback to be used for determining the file default rules.
Limit the uploaded file to only image types.
Limit the uploaded file to the given MIME types or file extensions.
Limit the uploaded file to the given file extensions.
Indicate that the uploaded file should be exactly a certain size in kilobytes.
Indicate that the uploaded file should be between a minimum and maximum size in kilobytes.
Indicate that the uploaded file should be no less than the given number of kilobytes.
Indicate that the uploaded file should be no more than the given number of kilobytes.
Indicate that the uploaded file should be in the given encoding.
Convert a potentially human-friendly file size to kilobytes.
Specify additional validation rules that should be merged with the default rules during validation.
Build the array of underlying validation rules based on the current state.
Separate the given mimetypes from extensions and return an array of correct rules to validate against.
Create a new image file rule instance.
Details
in
Conditionable at line 23
mixed
when(mixed $value = null, callable|null $callback = null, callable|null $default = null)
Apply the callback if the given "value" is (or resolves to) truthy.
in
Conditionable at line 56
mixed
unless(mixed $value = null, callable|null $callback = null, callable|null $default = null)
Apply the callback if the given "value" is (or resolves to) falsy.
in
ClonesCustomRules at line 16
void
__clone()
Clone the nested executable rule objects.
in
Macroable at line 28
static void
macro(string $name, callable|object $macro)
Register a custom macro.
Boot-only. Macros persist in a static property for the worker lifetime and apply to every subsequent call on the macroable class.
in
Macroable at line 41
static void
mixin(object $mixin, bool $replace = true)
Mix another object into the class.
Boot-only. Delegates to macro() for each method; registered macros persist in a static property for the worker lifetime.
in
Macroable at line 57
static bool
hasMacro(string $name)
Check if macro is registered.
in
Macroable at line 68
static void
flushMacros()
Flush the existing macros.
Boot or tests only. Clears worker-wide macros; concurrent coroutines may resolve different methods depending on timing.
in
Macroable at line 78
static mixed
__callStatic(string $method, array $parameters)
Dynamically handle calls to the class.
in
Macroable at line 103
mixed
__call(string $method, array $parameters)
Dynamically handle calls to the class.
in
File at line 89
static File|null
defaults(mixed $callback = null)
Set the default callback to be used for determining the file default rules.
If no arguments are passed, the default file rule configuration will be returned.
Boot-only when setting. The default callback persists in a static property for the worker lifetime and is used by every File::default() call across all coroutines.
in
File at line 127
static ImageFile
image(bool $allowSvg = false)
Limit the uploaded file to only image types.
in
File at line 137
static File
types(array|string $mimetypes)
Limit the uploaded file to the given MIME types or file extensions.
in
File at line 145
File
extensions(array|string $extensions)
Limit the uploaded file to the given file extensions.
in
File at line 155
File
size(int|string $size)
Indicate that the uploaded file should be exactly a certain size in kilobytes.
in
File at line 166
File
between(int|string $minSize, int|string $maxSize)
Indicate that the uploaded file should be between a minimum and maximum size in kilobytes.
in
File at line 177
File
min(int|string $size)
Indicate that the uploaded file should be no less than the given number of kilobytes.
in
File at line 187
File
max(int|string $size)
Indicate that the uploaded file should be no more than the given number of kilobytes.
in
File at line 197
File
encoding(string $encoding)
Indicate that the uploaded file should be in the given encoding.
in
File at line 207
protected mixed
toKilobytes(int|string $size)
Convert a potentially human-friendly file size to kilobytes.
in
File at line 229
File
rules(array|string|Stringable $rules)
Specify additional validation rules that should be merged with the default rules during validation.
in
File at line 239
bool
passes(string $attribute, mixed $value)
Determine if the validation rule passes.
in
File at line 260
protected array
buildValidationRules()
Build the array of underlying validation rules based on the current state.
in
File at line 288
protected array
buildMimetypes()
Separate the given mimetypes from extensions and return an array of correct rules to validate against.
in
File at line 317
protected bool
fail(array|string $messages)
Adds the given failures, and return false.
in
File at line 327
array|string
message()
Get the validation error message.
in
File at line 335
ValidatorAwareRule
setValidator(Validator $validator)
Set the current validator.
in
File at line 345
DataAwareRule
setData(array $data)
Set the current data under validation.
in
File at line 355
static void
flushState()
Flush all static state.
at line 12
__construct(bool $allowSvg = false)
Create a new image file rule instance.
at line 24
ImageFile
dimensions(Dimensions $dimensions)
The dimension constraints for the uploaded file.