Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Validation
/
Rules
:
ArrayRule.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php namespace Illuminate\Validation\Rules; use BackedEnum; use Illuminate\Contracts\Support\Arrayable; use Stringable; use UnitEnum; class ArrayRule implements Stringable { /** * The accepted keys. * * @var array */ protected $keys; /** * Create a new array rule instance. * * @param array|null $keys * @return void */ public function __construct($keys = null) { if ($keys instanceof Arrayable) { $keys = $keys->toArray(); } $this->keys = is_array($keys) ? $keys : func_get_args(); } /** * Convert the rule to a validation string. * * @return string */ public function __toString() { if (empty($this->keys)) { return 'array'; } $keys = array_map( static fn ($key) => match (true) { $key instanceof BackedEnum => $key->value, $key instanceof UnitEnum => $key->name, default => $key, }, $this->keys, ); return 'array:'.implode(',', $keys); } }