FormRequest

class FormRequest extends Request implements ValidatesWhenResolved (View source)

Traits

ValidatesWhenResolvedTrait Provides default implementation of ValidatesWhenResolved contract.
InteractsWithContentTypes
InteractsWithFlashData
InteractsWithInput
Macroable

Properties

static protected array $macros The registered string macros. from Macroable
protected ParameterBag|null $json The decoded JSON content for the request. from Request
protected array $convertedFiles All of the converted files for the request. from Request
protected Closure $userResolver The user resolver callback. from Request
protected Closure $routeResolver The route resolver callback. from Request
protected Container $container The container instance.
protected Redirector $redirector The redirector instance.
protected string $redirect The URI to redirect to if validation fails.
protected string $redirectRoute The route to redirect to if validation fails.
protected string $redirectAction The controller action to redirect to if validation fails.
protected string $errorBag The key to be used for the view error bag.

Methods

static bool matchesType(string $actual, string $type)

Determine if the given content types match.

from InteractsWithContentTypes
bool isJson()

Determine if the request is sending JSON.

from InteractsWithContentTypes
bool expectsJson()

Determine if the current request probably expects a JSON response.

from InteractsWithContentTypes
bool wantsJson()

Determine if the current request is asking for JSON.

from InteractsWithContentTypes
bool accepts(string|array $contentTypes)

Determines whether the current requests accepts a given content type.

from InteractsWithContentTypes
string|null prefers(string|array $contentTypes)

Return the most suitable content type from the given array based on content negotiation.

from InteractsWithContentTypes
bool acceptsAnyContentType()

Determine if the current request accepts any content type.

from InteractsWithContentTypes
bool acceptsJson()

Determines whether a request accepts JSON.

from InteractsWithContentTypes
bool acceptsHtml()

Determines whether a request accepts HTML.

from InteractsWithContentTypes
string format(string $default = 'html')

Get the data format expected in the response.

from InteractsWithContentTypes
string|array old(string $key = null, string|array|null $default = null)

Retrieve an old input item.

from InteractsWithFlashData
void flash()

Flash the input for the current request to the session.

from InteractsWithFlashData
void flashOnly(array|mixed $keys)

Flash only some of the input to the session.

from InteractsWithFlashData
void flashExcept(array|mixed $keys)

Flash only some of the input to the session.

from InteractsWithFlashData
void flush()

Flush all of the old input from the session.

from InteractsWithFlashData
string|array|null server(string $key = null, string|array|null $default = null)

Retrieve a server variable from the request.

from InteractsWithInput
bool hasHeader(string $key)

Determine if a header is set on the request.

from InteractsWithInput
string|array|null header(string $key = null, string|array|null $default = null)

Retrieve a header from the request.

from InteractsWithInput
string|null bearerToken()

Get the bearer token from the request headers.

from InteractsWithInput
bool exists(string|array $key)

Determine if the request contains a given input item key.

from InteractsWithInput
bool has(string|array $key)

Determine if the request contains a given input item key.

from InteractsWithInput
bool hasAny(string|array $keys)

Determine if the request contains any of the given inputs.

from InteractsWithInput
bool filled(string|array $key)

Determine if the request contains a non-empty value for an input item.

from InteractsWithInput
bool anyFilled(string|array $keys)

Determine if the request contains a non-empty value for any of the given inputs.

from InteractsWithInput
bool isEmptyString(string $key)

Determine if the given input key is an empty string for "has".

from InteractsWithInput
array keys()

Get the keys for all of the input and files.

from InteractsWithInput
array all(array|mixed $keys = null)

Get all of the input and files for the request.

from InteractsWithInput
string|array|null input(string|null $key = null, string|array|null $default = null)

Retrieve an input item from the request.

from InteractsWithInput
array only(array|mixed $keys)

Get a subset containing the provided keys with values from the input data.

from InteractsWithInput
array except(array|mixed $keys)

Get all of the input except for a specified array of items.

from InteractsWithInput
string|array|null query(string $key = null, string|array|null $default = null)

Retrieve a query string item from the request.

from InteractsWithInput
string|array|null post(string $key = null, string|array|null $default = null)

Retrieve a request payload item from the request.

from InteractsWithInput
bool hasCookie(string $key)

Determine if a cookie is set on the request.

from InteractsWithInput
string|array|null cookie(string $key = null, string|array|null $default = null)

Retrieve a cookie from the request.

from InteractsWithInput
array allFiles()

Get an array of all of the files on the request.

from InteractsWithInput
array convertUploadedFiles(array $files)

Convert the given array of Symfony UploadedFiles to custom Laravel UploadedFiles.

from InteractsWithInput
bool hasFile(string $key)

Determine if the uploaded data contains a file.

from InteractsWithInput
bool isValidFile(mixed $file)

Check that the given file is a valid file instance.

from InteractsWithInput
UploadedFile|array|null file(string $key = null, mixed $default = null)

Retrieve a file from the request.

from InteractsWithInput
string|array|null retrieveItem(string $source, string $key, string|array|null $default)

Retrieve a parameter item from a given source.

from InteractsWithInput
static void macro(string $name, object|callable $macro)

Register a custom macro.

from Macroable
static void mixin(object $mixin)

Mix another object into the class.

from Macroable
static bool hasMacro(string $name)

Checks if macro is registered.

from Macroable
static mixed __callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

from Macroable
mixed __call(string $method, array $parameters)

Dynamically handle calls to the class.

from Macroable
static Request capture()

Create a new Illuminate HTTP request from server variables.

from Request
$this instance()

Return the Request instance.

from Request
string method()

Get the request method.

from Request
string root()

Get the root URL for the application.

from Request
string url()

Get the URL (no query string) for the request.

from Request
string fullUrl()

Get the full URL for the request.

from Request
string fullUrlWithQuery(array $query)

Get the full URL for the request with the added query string parameters.

from Request
string path()

Get the current path info for the request.

from Request
string decodedPath()

Get the current decoded path info for the request.

from Request
string|null segment(int $index, string|null $default = null)

Get a segment from the URI (1 based index).

from Request
array segments()

Get all of the segments for the request path.

from Request
bool is(dynamic ...$patterns)

Determine if the current request URI matches a pattern.

from Request
bool routeIs(dynamic ...$patterns)

Determine if the route name matches a given pattern.

from Request
bool fullUrlIs(dynamic ...$patterns)

Determine if the current request URL and query string matches a pattern.

from Request
bool ajax()

Determine if the request is the result of an AJAX call.

from Request
bool pjax()

Determine if the request is the result of an PJAX call.

from Request
bool secure()

Determine if the request is over HTTPS.

from Request
string ip()

Get the client IP address.

from Request
array ips()

Get the client IP addresses.

from Request
string userAgent()

Get the client user agent.

from Request
Request merge(array $input)

Merge new input into the current request's input array.

from Request
Request replace(array $input)

Replace the input for the current request.

from Request
mixed get(string $key, mixed $default = null)

This method belongs to Symfony HttpFoundation and is not usually needed when using Laravel.

from Request
ParameterBag|mixed json(string $key = null, mixed $default = null)

Get the JSON payload for the request.

from Request
ParameterBag getInputSource()

Get the input source for the request.

from Request
static Request createFrom(Request $from, Request|null $to = null)

Create a new request instance from the given Laravel request.

from Request
static Request createFromBase(Request $request)

Create an Illuminate request from a Symfony instance.

from Request
duplicate(array $query = null, array $request = null, array $attributes = null, array $cookies = null, array $files = null, array $server = null)

{@inheritdoc}

from Request
mixed filterFiles(mixed $files)

Filter the given array of files, removing any empty values.

from Request
Store session()

Get the session associated with the request.

from Request
Store|null getSession()

Get the session associated with the request.

from Request
void setLaravelSession(Session $session)

Set the session instance on the request.

from Request
mixed user(string|null $guard = null)

Get the user making the request.

from Request
Route|object|string route(string|null $param = null, mixed $default = null)

Get the route handling the request.

from Request
string fingerprint()

Get a unique fingerprint for the request / route / IP address.

from Request
$this setJson(ParameterBag $json)

Set the JSON payload for the request.

from Request
Closure getUserResolver()

Get the user resolver callback.

from Request
$this setUserResolver(Closure $callback)

Set the user resolver callback.

from Request
Closure getRouteResolver()

Get the route resolver callback.

from Request
$this setRouteResolver(Closure $callback)

Set the route resolver callback.

from Request
array toArray()

Get all of the input and files for the request.

from Request
bool offsetExists(string $offset)

Determine if the given offset exists.

from Request
mixed offsetGet(string $offset)

Get the value at the given offset.

from Request
void offsetSet(string $offset, mixed $value)

Set the value at the given offset.

from Request
void offsetUnset(string $offset)

Remove the value at the given offset.

from Request
bool __isset(string $key)

Check if an input element is set on the request.

from Request
mixed __get(string $key)

Get an input element from the request.

from Request
void validateResolved()

Validate the class instance.

from ValidatesWhenResolvedTrait
void prepareForValidation()

Prepare the data for validation.

from ValidatesWhenResolvedTrait
Validator getValidatorInstance()

Get the validator instance for the request.

void failedValidation(Validator $validator)

Handle a failed validation attempt.

bool passesAuthorization()

Determine if the request passes the authorization check.

void failedAuthorization()

Handle a failed authorization attempt.

Validator createDefaultValidator(Factory $factory)

Create the default validator instance.

array validationData()

Get data to be validated from the request.

string getRedirectUrl()

Get the URL to redirect to on a validation error.

array validated()

Get the validated data from the request.

array messages()

Get custom messages for validator errors.

array attributes()

Get custom attributes for validator errors.

$this setRedirector(Redirector $redirector)

Set the Redirector instance.

$this setContainer(Container $container)

Set the container implementation.

Details

static bool matchesType(string $actual, string $type)

Determine if the given content types match.

Parameters

string $actual
string $type

Return Value

bool

bool isJson()

Determine if the request is sending JSON.

Return Value

bool

bool expectsJson()

Determine if the current request probably expects a JSON response.

Return Value

bool

bool wantsJson()

Determine if the current request is asking for JSON.

Return Value

bool

bool accepts(string|array $contentTypes)

Determines whether the current requests accepts a given content type.

Parameters

string|array $contentTypes

Return Value

bool

string|null prefers(string|array $contentTypes)

Return the most suitable content type from the given array based on content negotiation.

Parameters

string|array $contentTypes

Return Value

string|null

bool acceptsAnyContentType()

Determine if the current request accepts any content type.

Return Value

bool

bool acceptsJson()

Determines whether a request accepts JSON.

Return Value

bool

bool acceptsHtml()

Determines whether a request accepts HTML.

Return Value

bool

string format(string $default = 'html')

Get the data format expected in the response.

Parameters

string $default

Return Value

string

string|array old(string $key = null, string|array|null $default = null)

Retrieve an old input item.

Parameters

string $key
string|array|null $default

Return Value

string|array

void flash()

Flash the input for the current request to the session.

Return Value

void

void flashOnly(array|mixed $keys)

Flash only some of the input to the session.

Parameters

array|mixed $keys

Return Value

void

void flashExcept(array|mixed $keys)

Flash only some of the input to the session.

Parameters

array|mixed $keys

Return Value

void

void flush()

Flush all of the old input from the session.

Return Value

void

string|array|null server(string $key = null, string|array|null $default = null)

Retrieve a server variable from the request.

Parameters

string $key
string|array|null $default

Return Value

string|array|null

bool hasHeader(string $key)

Determine if a header is set on the request.

Parameters

string $key

Return Value

bool

string|array|null header(string $key = null, string|array|null $default = null)

Retrieve a header from the request.

Parameters

string $key
string|array|null $default

Return Value

string|array|null

string|null bearerToken()

Get the bearer token from the request headers.

Return Value

string|null

bool exists(string|array $key)

Determine if the request contains a given input item key.

Parameters

string|array $key

Return Value

bool

bool has(string|array $key)

Determine if the request contains a given input item key.

Parameters

string|array $key

Return Value

bool

bool hasAny(string|array $keys)

Determine if the request contains any of the given inputs.

Parameters

string|array $keys

Return Value

bool

bool filled(string|array $key)

Determine if the request contains a non-empty value for an input item.

Parameters

string|array $key

Return Value

bool

bool anyFilled(string|array $keys)

Determine if the request contains a non-empty value for any of the given inputs.

Parameters

string|array $keys

Return Value

bool

protected bool isEmptyString(string $key)

Determine if the given input key is an empty string for "has".

Parameters

string $key

Return Value

bool

array keys()

Get the keys for all of the input and files.

Return Value

array

array all(array|mixed $keys = null)

Get all of the input and files for the request.

Parameters

array|mixed $keys

Return Value

array

string|array|null input(string|null $key = null, string|array|null $default = null)

Retrieve an input item from the request.

Parameters

string|null $key
string|array|null $default

Return Value

string|array|null

array only(array|mixed $keys)

Get a subset containing the provided keys with values from the input data.

Parameters

array|mixed $keys

Return Value

array

array except(array|mixed $keys)

Get all of the input except for a specified array of items.

Parameters

array|mixed $keys

Return Value

array

string|array|null query(string $key = null, string|array|null $default = null)

Retrieve a query string item from the request.

Parameters

string $key
string|array|null $default

Return Value

string|array|null

string|array|null post(string $key = null, string|array|null $default = null)

Retrieve a request payload item from the request.

Parameters

string $key
string|array|null $default

Return Value

string|array|null

bool hasCookie(string $key)

Determine if a cookie is set on the request.

Parameters

string $key

Return Value

bool

Retrieve a cookie from the request.

Parameters

string $key
string|array|null $default

Return Value

string|array|null

array allFiles()

Get an array of all of the files on the request.

Return Value

array

protected array convertUploadedFiles(array $files)

Convert the given array of Symfony UploadedFiles to custom Laravel UploadedFiles.

Parameters

array $files

Return Value

array

bool hasFile(string $key)

Determine if the uploaded data contains a file.

Parameters

string $key

Return Value

bool

protected bool isValidFile(mixed $file)

Check that the given file is a valid file instance.

Parameters

mixed $file

Return Value

bool

UploadedFile|array|null file(string $key = null, mixed $default = null)

Retrieve a file from the request.

Parameters

string $key
mixed $default

Return Value

UploadedFile|array|null

protected string|array|null retrieveItem(string $source, string $key, string|array|null $default)

Retrieve a parameter item from a given source.

Parameters

string $source
string $key
string|array|null $default

Return Value

string|array|null

static void macro(string $name, object|callable $macro)

Register a custom macro.

Parameters

string $name
object|callable $macro

Return Value

void

static void mixin(object $mixin)

Mix another object into the class.

Parameters

object $mixin

Return Value

void

Exceptions

ReflectionException

static bool hasMacro(string $name)

Checks if macro is registered.

Parameters

string $name

Return Value

bool

static mixed __callStatic(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

mixed __call(string $method, array $parameters)

Dynamically handle calls to the class.

Parameters

string $method
array $parameters

Return Value

mixed

Exceptions

BadMethodCallException

static Request capture()

Create a new Illuminate HTTP request from server variables.

Return Value

Request

$this instance()

Return the Request instance.

Return Value

$this

string method()

Get the request method.

Return Value

string

string root()

Get the root URL for the application.

Return Value

string

string url()

Get the URL (no query string) for the request.

Return Value

string

string fullUrl()

Get the full URL for the request.

Return Value

string

string fullUrlWithQuery(array $query)

Get the full URL for the request with the added query string parameters.

Parameters

array $query

Return Value

string

string path()

Get the current path info for the request.

Return Value

string

string decodedPath()

Get the current decoded path info for the request.

Return Value

string

string|null segment(int $index, string|null $default = null)

Get a segment from the URI (1 based index).

Parameters

int $index
string|null $default

Return Value

string|null

array segments()

Get all of the segments for the request path.

Return Value

array

bool is(dynamic ...$patterns)

Determine if the current request URI matches a pattern.

Parameters

dynamic ...$patterns

Return Value

bool

bool routeIs(dynamic ...$patterns)

Determine if the route name matches a given pattern.

Parameters

dynamic ...$patterns

Return Value

bool

bool fullUrlIs(dynamic ...$patterns)

Determine if the current request URL and query string matches a pattern.

Parameters

dynamic ...$patterns

Return Value

bool

bool ajax()

Determine if the request is the result of an AJAX call.

Return Value

bool

bool pjax()

Determine if the request is the result of an PJAX call.

Return Value

bool

bool secure()

Determine if the request is over HTTPS.

Return Value

bool

string ip()

Get the client IP address.

Return Value

string

array ips()

Get the client IP addresses.

Return Value

array

string userAgent()

Get the client user agent.

Return Value

string

Request merge(array $input)

Merge new input into the current request's input array.

Parameters

array $input

Return Value

Request

Request replace(array $input)

Replace the input for the current request.

Parameters

array $input

Return Value

Request

mixed get(string $key, mixed $default = null)

This method belongs to Symfony HttpFoundation and is not usually needed when using Laravel.

Instead, you may use the "input" method.

Parameters

string $key
mixed $default

Return Value

mixed

ParameterBag|mixed json(string $key = null, mixed $default = null)

Get the JSON payload for the request.

Parameters

string $key
mixed $default

Return Value

ParameterBag|mixed

protected ParameterBag getInputSource()

Get the input source for the request.

Return Value

ParameterBag

static Request createFrom(Request $from, Request|null $to = null)

Create a new request instance from the given Laravel request.

Parameters

Request $from
Request|null $to

Return Value

Request

static Request createFromBase(Request $request)

Create an Illuminate request from a Symfony instance.

Parameters

Request $request

Return Value

Request

duplicate(array $query = null, array $request = null, array $attributes = null, array $cookies = null, array $files = null, array $server = null)

{@inheritdoc}

Parameters

array $query
array $request
array $attributes
array $cookies
array $files
array $server

protected mixed filterFiles(mixed $files)

Filter the given array of files, removing any empty values.

Parameters

mixed $files

Return Value

mixed

Store session()

Get the session associated with the request.

Return Value

Store

Exceptions

RuntimeException

Store|null getSession()

Get the session associated with the request.

Return Value

Store|null

void setLaravelSession(Session $session)

Set the session instance on the request.

Parameters

Session $session

Return Value

void

mixed user(string|null $guard = null)

Get the user making the request.

Parameters

string|null $guard

Return Value

mixed

Route|object|string route(string|null $param = null, mixed $default = null)

Get the route handling the request.

Parameters

string|null $param
mixed $default

Return Value

Route|object|string

string fingerprint()

Get a unique fingerprint for the request / route / IP address.

Return Value

string

Exceptions

RuntimeException

$this setJson(ParameterBag $json)

Set the JSON payload for the request.

Parameters

ParameterBag $json

Return Value

$this

Closure getUserResolver()

Get the user resolver callback.

Return Value

Closure

$this setUserResolver(Closure $callback)

Set the user resolver callback.

Parameters

Closure $callback

Return Value

$this

Closure getRouteResolver()

Get the route resolver callback.

Return Value

Closure

$this setRouteResolver(Closure $callback)

Set the route resolver callback.

Parameters

Closure $callback

Return Value

$this

array toArray()

Get all of the input and files for the request.

Return Value

array

bool offsetExists(string $offset)

Determine if the given offset exists.

Parameters

string $offset

Return Value

bool

mixed offsetGet(string $offset)

Get the value at the given offset.

Parameters

string $offset

Return Value

mixed

void offsetSet(string $offset, mixed $value)

Set the value at the given offset.

Parameters

string $offset
mixed $value

Return Value

void

void offsetUnset(string $offset)

Remove the value at the given offset.

Parameters

string $offset

Return Value

void

bool __isset(string $key)

Check if an input element is set on the request.

Parameters

string $key

Return Value

bool

mixed __get(string $key)

Get an input element from the request.

Parameters

string $key

Return Value

mixed

void validateResolved()

Validate the class instance.

Return Value

void

protected void prepareForValidation()

Prepare the data for validation.

Return Value

void

protected Validator getValidatorInstance()

Get the validator instance for the request.

Return Value

Validator

protected void failedValidation(Validator $validator)

Handle a failed validation attempt.

Parameters

Validator $validator

Return Value

void

Exceptions

ValidationException

protected bool passesAuthorization()

Determine if the request passes the authorization check.

Return Value

bool

protected void failedAuthorization()

Handle a failed authorization attempt.

Return Value

void

Exceptions

AuthorizationException

protected Validator createDefaultValidator(Factory $factory)

Create the default validator instance.

Parameters

Factory $factory

Return Value

Validator

protected array validationData()

Get data to be validated from the request.

Return Value

array

protected string getRedirectUrl()

Get the URL to redirect to on a validation error.

Return Value

string

array validated()

Get the validated data from the request.

Return Value

array

array messages()

Get custom messages for validator errors.

Return Value

array

array attributes()

Get custom attributes for validator errors.

Return Value

array

$this setRedirector(Redirector $redirector)

Set the Redirector instance.

Parameters

Redirector $redirector

Return Value

$this

$this setContainer(Container $container)

Set the container implementation.

Parameters

Container $container

Return Value

$this

© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.7/Illuminate/Foundation/Http/FormRequest.html