Request
class Request extends Request implements Arrayable, ArrayAccess
Traits
Constants
| protected FORWARDED_PARAMS |
Forwarded-header parameter mapping. |
| protected TRUSTED_HEADERS |
Mapping of trusted-header bitmask flags to header names. |
Properties
| static protected array | $macros | The registered string macros. |
from Macroable |
| protected InputBag|null | $json | The decoded JSON content for the request. |
|
| protected null|UploadedFile|UploadedFile[]> | $convertedFiles | All of the converted files for the request. |
|
| protected Closure|null | $userResolver | The user resolver callback. |
|
| protected Closure|null | $routeResolver | The route resolver callback. |
|
| protected string|null | $cachedAcceptHeader | The cached "Accept" header value. |
|
| protected string[] | $trustedProxiesValue | Trusted proxy IP addresses / CIDR ranges for the current request. |
|
| protected int | $trustedHeaderSetValue | Bitmask of trusted forwarded-headers for the current request. |
|
| protected string[] | $trustedHostPatternsValue | Compiled trusted-host regex patterns for the current request. |
|
| protected string[] | $trustedHostsValue | Memoized cache of host strings that matched a trusted pattern. |
|
| protected array<string, array> | $trustedValuesCacheValue | Memoized cache of parsed trusted-header values for this request. |
|
| protected bool | $isHostValidValue | One-shot flag preventing duplicate "Suspicious Host" exceptions per request. |
|
| protected bool | $isForwardedValidValue | One-shot flag preventing duplicate "ConflictingHeaders" exceptions per request. |
Methods
Filter the given array of rules into an array of rules that are included in precognitive headers.
Determine if the given attribute should be validated.
Determine if the request is attempting to be precognitive.
Determine if the current request probably expects a JSON response.
Determine if the current request is asking for JSON.
Determine if the current request is asking for Markdown.
Determine whether the current requests accepts a given content type.
Return the most suitable content type from the given array based on content negotiation.
Determine if the current request accepts any content type.
Determine if the given content types match.
Get the data format expected in the response.
Flash only some of the input to the session.
Flash only some of the input to the session.
Retrieve data from the instance.
Determine if the instance contains any of the given keys.
Apply the callback if the instance contains the given key.
Determine if the instance contains a non-empty value for the given key.
Determine if the instance contains an empty value for the given key.
Determine if the instance contains a non-empty value for any of the given keys.
Apply the callback if the instance contains a non-empty value for the given key.
Apply the callback if the instance contains a valid enum value for the given key.
Determine if the instance is missing a given key.
Apply the callback if the instance is missing the given key.
Determine if the given key is an empty string for "filled".
Retrieve data from the instance as a Stringable instance.
Retrieve data from the instance as a Stringable instance.
Retrieve data as a boolean value.
Retrieve data as an integer value.
Retrieve data as a float value.
Retrieve data clamped between min and max values.
Retrieve data from the instance as a Carbon instance.
Retrieve data from the instance as a CarbonInterval instance.
Retrieve data from the instance as an enum.
Retrieve data from the instance as an array of enums.
Determine if the given enum class is backed.
Normalize enum input to a strict backed value.
Resolve and cache the enum backing type for repeated lookups.
Retrieve data from the instance as an array.
Retrieve data from the instance as a collection.
Get a subset containing the provided keys with values from the instance data.
Get all of the data except for a specified array of items.
Retrieve a server variable from the request.
Retrieve a header from the request.
Retrieve an input item from the request.
Retrieve input from the request as a Fluent object instance.
Retrieve a query string item from the request.
Retrieve a request payload item from the request.
Retrieve a cookie from the request.
Convert the given array of Symfony UploadedFiles to custom Hypervel UploadedFiles.
Check that the given file is a valid file instance.
Retrieve a file from the request.
Retrieve a parameter item from a given source.
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.
Initialize the request data.
Create a new HTTP request from PHP superglobals.
Set the trusted proxies on the current request.
Get the trusted proxies for the current request.
Get the trusted-header bitmask for the current request.
Set the trusted host patterns for the current request.
Get the trusted host patterns for the current request.
Get the request method.
Get the root URL for the application.
Get the URL (no query string) for the request.
Get the full URL for the request.
Get the full URL for the request with the added query string parameters.
Get the full URL for the request without the given query string parameters.
Get the current path info for the request.
Get the current decoded path info for the request.
Get a segment from the URI (1 based index).
Get all of the segments for the request path.
Determine if the current request URI matches a pattern.
Determine if the route name matches a given pattern.
Determine if the current request URL and query string match a pattern.
Get the host name.
Get the HTTP host being requested.
Get the scheme and HTTP host.
Determine if the request is the result of an AJAX call.
Determine if the request is the result of a PJAX call.
Determine if the request is the result of a prefetch call.
Determine if the request is over HTTPS.
Get the client IP address.
Get the client IP addresses.
Get the client IP addresses.
Return the root URL from which this request is executed.
Return the port on which the request is made.
Determine whether the request is secure.
Return the host name.
Determine whether this request originated from a trusted proxy.
Get the client user agent.
No description
Merge new input into the request's input, but only when that key is missing from the request.
Get the JSON payload for the request.
Get the input source for the request.
Create a new request instance from the given request.
Create a Hypervel request from a Symfony instance.
No description
Clone the current request.
Reset the trusted-values cache and one-shot exception flags.
Return the real base URL without the trusted reverse proxy prefix.
Parse the trusted forwarded-header values for the requested type.
Normalize and filter trusted client IPs.
Validate a host string per Symfony's URL-spec rules.
Filter the given array of files, removing any empty values.
No description
No description
Set the locale for the request instance.
Set the default locale for the request instance.
Get the user making the request.
Get the route handling the request.
Get a unique fingerprint for the request / route / IP address.
Get the user resolver callback.
Get the route resolver callback.
Get all of the input and files for the request.
Determine if the given offset exists.
Get the value at the given offset.
Set the value at the given offset.
Remove the value at the given offset.
Flush all static state.
Check if an input element is set on the request.
Get an input element from the request.
No description
No description
No description
No description
No description
No description
Registered as a macro by Hypervel\Inertia\InertiaServiceProvider.
Details
in
CanBePrecognitive at line 14
array
filterPrecognitiveRules(array $rules)
Filter the given array of rules into an array of rules that are included in precognitive headers.
in
CanBePrecognitive at line 30
protected bool
shouldValidatePrecognitiveAttribute(string $attribute, array $validateOnly)
Determine if the given attribute should be validated.
in
CanBePrecognitive at line 46
bool
isAttemptingPrecognition()
Determine if the request is attempting to be precognitive.
in
CanBePrecognitive at line 54
bool
isPrecognitive()
Determine if the request is precognitive.
in
InteractsWithContentTypes at line 14
bool
isJson()
Determine if the request is sending JSON.
in
InteractsWithContentTypes at line 22
bool
expectsJson()
Determine if the current request probably expects a JSON response.
in
InteractsWithContentTypes at line 30
bool
wantsJson()
Determine if the current request is asking for JSON.
in
InteractsWithContentTypes at line 40
bool
wantsMarkdown()
Determine if the current request is asking for Markdown.
in
InteractsWithContentTypes at line 50
bool
accepts(string|array $contentTypes)
Determine whether the current requests accepts a given content type.
in
InteractsWithContentTypes at line 86
string|null
prefers(string|array $contentTypes)
Return the most suitable content type from the given array based on content negotiation.
in
InteractsWithContentTypes at line 124
bool
acceptsAnyContentType()
Determine if the current request accepts any content type.
in
InteractsWithContentTypes at line 136
bool
acceptsJson()
Determine whether a request accepts JSON.
in
InteractsWithContentTypes at line 144
bool
acceptsMarkdown()
Determine whether a request accepts Markdown.
in
InteractsWithContentTypes at line 152
bool
acceptsHtml()
Determine whether a request accepts HTML.
in
InteractsWithContentTypes at line 160
static bool
matchesType(string $actual, string $type)
Determine if the given content types match.
in
InteractsWithContentTypes at line 174
string
format(string $default = 'html')
Get the data format expected in the response.
in
InteractsWithFlashData at line 14
string|array|null
old(string|null $key = null, Model|string|array|null $default = null)
Retrieve an old input item.
in
InteractsWithFlashData at line 24
void
flash()
Flash the input for the current request to the session.
in
InteractsWithFlashData at line 32
void
flashOnly(mixed $keys)
Flash only some of the input to the session.
in
InteractsWithFlashData at line 42
void
flashExcept(mixed $keys)
Flash only some of the input to the session.
in
InteractsWithFlashData at line 52
void
flush()
Flush all of the old input from the session.
in
Dumpable at line 12
never
dd(mixed ...$args)
Dump the given arguments and terminate execution.
in
InteractsWithData at line 30
abstract array
all(mixed $keys = null)
Retrieve all data from the instance.
in
InteractsWithData at line 35
abstract protected mixed
data(string|null $key = null, mixed $default = null)
Retrieve data from the instance.
in
InteractsWithData at line 40
bool
exists(array|string $key)
Determine if the data contains a given key.
in
InteractsWithData at line 48
bool
has(array|string $key)
Determine if the data contains a given key.
in
InteractsWithData at line 66
bool
hasAny(array|string $keys)
Determine if the instance contains any of the given keys.
in
InteractsWithData at line 80
mixed
whenHas(string $key, callable $callback, callable|null $default = null)
Apply the callback if the instance contains the given key.
in
InteractsWithData at line 96
bool
filled(array|string $key)
Determine if the instance contains a non-empty value for the given key.
in
InteractsWithData at line 112
bool
isNotFilled(array|string $key)
Determine if the instance contains an empty value for the given key.
in
InteractsWithData at line 128
bool
anyFilled(array|string $keys)
Determine if the instance contains a non-empty value for any of the given keys.
in
InteractsWithData at line 146
mixed
whenFilled(string $key, callable $callback, callable|null $default = null)
Apply the callback if the instance contains a non-empty value for the given key.
in
InteractsWithData at line 168
mixed
whenEnum(string $key, string $enumClass, callable $callback, callable|null $default = null)
Apply the callback if the instance contains a valid enum value for the given key.
in
InteractsWithData at line 188
bool
missing(array|string $key)
Determine if the instance is missing a given key.
in
InteractsWithData at line 198
mixed
whenMissing(string $key, callable $callback, callable|null $default = null)
Apply the callback if the instance is missing the given key.
in
InteractsWithData at line 214
protected bool
isEmptyString(string $key)
Determine if the given key is an empty string for "filled".
in
InteractsWithData at line 224
Stringable
str(string $key, mixed $default = null)
Retrieve data from the instance as a Stringable instance.
in
InteractsWithData at line 232
Stringable
string(string $key, mixed $default = null)
Retrieve data from the instance as a Stringable instance.
in
InteractsWithData at line 242
bool
boolean(string|null $key = null, bool $default = false)
Retrieve data as a boolean value.
Returns true when value is "1", "true", "on", and "yes". Otherwise, returns false.
in
InteractsWithData at line 250
int
integer(string $key, int $default = 0)
Retrieve data as an integer value.
in
InteractsWithData at line 258
float
float(string $key, float $default = 0.0)
Retrieve data as a float value.
in
InteractsWithData at line 266
int|float
clamp(string $key, int|float $min, int|float $max, int|float $default = 0)
Retrieve data clamped between min and max values.
in
InteractsWithData at line 283
CarbonInterface|null
date(string $key, string|null $format = null, UnitEnum|string|null $tz = null)
Retrieve data from the instance as a Carbon instance.
in
InteractsWithData at line 301
CarbonInterval|null
interval(string $key, Unit|string|null $unit = null)
Retrieve data from the instance as a CarbonInterval instance.
in
InteractsWithData at line 327
mixed
enum(string $key, string $enumClass, mixed $default = null)
Retrieve data from the instance as an enum.
in
InteractsWithData at line 350
array
enums(string $key, string $enumClass)
Retrieve data from the instance as an array of enums.
in
InteractsWithData at line 369
protected bool
isBackedEnum(string $enumClass)
Determine if the given enum class is backed.
in
InteractsWithData at line 377
protected int|string|null
normalizeEnumValue(string $enumClass, mixed $value)
Normalize enum input to a strict backed value.
in
InteractsWithData at line 422
protected string|null
enumBackingType(string $enumClass)
Resolve and cache the enum backing type for repeated lookups.
in
InteractsWithData at line 433
array
array(array|string|null $key = null)
Retrieve data from the instance as an array.
in
InteractsWithData at line 441
Collection
collect(array|string|null $key = null)
Retrieve data from the instance as a collection.
in
InteractsWithData at line 451
array
only(mixed $keys)
Get a subset containing the provided keys with values from the instance data.
in
InteractsWithData at line 475
array
except(mixed $keys)
Get all of the data except for a specified array of items.
in
InteractsWithInput at line 23
string|array|int|float|null
server(string|null $key = null, string|array|int|float|null $default = null)
Retrieve a server variable from the request.
in
InteractsWithInput at line 31
bool
hasHeader(string $key)
Determine if a header is set on the request.
in
InteractsWithInput at line 39
string|array|null
header(string|null $key = null, string|array|null $default = null)
Retrieve a header from the request.
in
InteractsWithInput at line 47
string|null
bearerToken()
Get the bearer token from the request headers.
in
InteractsWithInput at line 65
array
keys()
Get the keys for all of the input and files.
in
InteractsWithInput at line 93
mixed
input(string|null $key = null, mixed $default = null)
Retrieve an input item from the request.
in
InteractsWithInput at line 105
Fluent
fluent(array|string|null $key = null, array $default = [])
Retrieve input from the request as a Fluent object instance.
in
InteractsWithInput at line 115
string|array|null
query(string|null $key = null, string|array|null $default = null)
Retrieve a query string item from the request.
in
InteractsWithInput at line 123
string|array|null
post(string|null $key = null, string|array|null $default = null)
Retrieve a request payload item from the request.
in
InteractsWithInput at line 131
bool
hasCookie(string $key)
Determine if a cookie is set on the request.
in
InteractsWithInput at line 139
string|array|null
cookie(string|null $key = null, string|array|null $default = null)
Retrieve a cookie from the request.
in
InteractsWithInput at line 149
array
allFiles()
Get an array of all of the files on the request.
in
InteractsWithInput at line 162
protected array
convertUploadedFiles(array $files)
Convert the given array of Symfony UploadedFiles to custom Hypervel UploadedFiles.
in
InteractsWithInput at line 178
bool
hasFile(string $key)
Determine if the uploaded data contains a file.
in
InteractsWithInput at line 196
protected bool
isValidFile(mixed $file)
Check that the given file is a valid file instance.
in
InteractsWithInput at line 206
UploadedFile|array|null
file(string|null $key = null, mixed $default = null)
Retrieve a file from the request.
in
InteractsWithInput at line 222
protected string|array|int|float|null
retrieveItem(string $source, string|null $key, string|array|int|float|null $default)
Retrieve a parameter item from a given source.
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
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.
at line 145
void
initialize(array $query = [], array $request = [], array $attributes = [], array $cookies = [], array $files = [], array $server = [], $content = null)
Initialize the request data.
at line 162
static Request
createFromGlobals()
Create a new HTTP request from PHP superglobals.
at line 170
static void
setTrustedProxies(array $proxies, int $trustedHeaderSet)
Set the trusted proxies on the current request.
at line 205
static array
getTrustedProxies()
Get the trusted proxies for the current request.
at line 215
static int
getTrustedHeaderSet()
Get the trusted-header bitmask for the current request.
at line 225
static void
setTrustedHosts(array $hostPatterns)
Set the trusted host patterns for the current request.
at line 246
static array
getTrustedHosts()
Get the trusted host patterns for the current request.
at line 258
Request
instance()
Return the Request instance.
at line 266
string
method()
Get the request method.
at line 274
Uri
uri()
Get a URI instance for the request.
at line 282
string
root()
Get the root URL for the application.
at line 290
string
url()
Get the URL (no query string) for the request.
at line 298
string
fullUrl()
Get the full URL for the request.
at line 310
string
fullUrlWithQuery(array $query)
Get the full URL for the request with the added query string parameters.
at line 322
string
fullUrlWithoutQuery(array|string $keys)
Get the full URL for the request without the given query string parameters.
at line 336
string
path()
Get the current path info for the request.
at line 346
string
decodedPath()
Get the current decoded path info for the request.
at line 354
string|null
segment(int $index, string|null $default = null)
Get a segment from the URI (1 based index).
at line 362
array
segments()
Get all of the segments for the request path.
at line 374
bool
is(mixed ...$patterns)
Determine if the current request URI matches a pattern.
at line 383
bool
routeIs(mixed ...$patterns)
Determine if the route name matches a given pattern.
at line 391
bool
fullUrlIs(mixed ...$patterns)
Determine if the current request URL and query string match a pattern.
at line 400
string
host()
Get the host name.
at line 408
string
httpHost()
Get the HTTP host being requested.
at line 416
string
schemeAndHttpHost()
Get the scheme and HTTP host.
at line 424
bool
ajax()
Determine if the request is the result of an AJAX call.
at line 432
bool
pjax()
Determine if the request is the result of a PJAX call.
at line 440
bool
prefetch()
Determine if the request is the result of a prefetch call.
at line 450
bool
secure()
Determine if the request is over HTTPS.
at line 458
string|null
ip()
Get the client IP address.
at line 466
array
ips()
Get the client IP addresses.
at line 474
array
getClientIps()
Get the client IP addresses.
at line 489
string
getBaseUrl()
Return the root URL from which this request is executed.
at line 505
int|string|null
getPort()
Return the port on which the request is made.
at line 532
bool
isSecure()
Determine whether the request is secure.
at line 548
string
getHost()
Return the host name.
at line 595
bool
isFromTrustedProxy()
Determine whether this request originated from a trusted proxy.
at line 605
string|null
userAgent()
Get the client user agent.
at line 610
array
getAcceptableContentTypes()
No description
at line 629
Request
merge(array $input)
Merge new input into the current request's input array.
at line 645
Request
mergeIfMissing(array $input)
Merge new input into the request's input, but only when that key is missing from the request.
at line 659
Request
replace(array $input)
Replace the input values for the current request.
at line 674
mixed
json(string|null $key = null, mixed $default = null)
Get the JSON payload for the request.
at line 690
protected InputBag
getInputSource()
Get the input source for the request.
at line 702
static Request
createFrom(Request $from, Request|null $to = null)
Create a new request instance from the given request.
at line 743
static Request
createFromBase(Request $request)
Create a Hypervel request from a Symfony instance.
at line 769
Request
duplicate(array|null $query = null, array|null $request = null, array|null $attributes = null, array|null $cookies = null, array|null $files = null, array|null $server = null)
No description
at line 778
__clone()
Clone the current request.
at line 791
protected void
copyTrustedStateFrom(Request $from)
Copy trusted request configuration from another request.
at line 806
protected void
resetTrustedRequestCaches()
Reset the trusted-values cache and one-shot exception flags.
at line 816
protected string
getBaseUrlReal()
Return the real base URL without the trusted reverse proxy prefix.
at line 826
protected array
getTrustedValues(int $type, string|null $ip = null)
Parse the trusted forwarded-header values for the requested type.
at line 903
protected array
normalizeAndFilterClientIps(array $clientIps, string $ip)
Normalize and filter trusted client IPs.
at line 941
static protected bool
isHostValid(string $host)
Validate a host string per Symfony's URL-spec rules.
at line 958
protected mixed
filterFiles(mixed $files)
Filter the given array of files, removing any empty values.
at line 980
bool
hasSession(bool $skipIfUninitialized = false)
No description
at line 986
SessionInterface
getSession()
No description
at line 1001
Session
session()
Get the session associated with the request.
at line 1015
void
setHypervelSession(Session $session)
Set the session instance on the request.
at line 1023
void
setRequestLocale(string $locale)
Set the locale for the request instance.
at line 1031
void
setDefaultRequestLocale(string $locale)
Set the default locale for the request instance.
at line 1039
mixed
user(string|null $guard = null)
Get the user making the request.
at line 1049
mixed
route(string|null $param = null, mixed $default = null)
Get the route handling the request.
at line 1072
string
fingerprint()
Get a unique fingerprint for the request / route / IP address.
at line 1089
Request
setJson(InputBag $json)
Set the JSON payload for the request.
at line 1099
Closure
getUserResolver()
Get the user resolver callback.
at line 1120
Closure
getRouteResolver()
Get the route resolver callback.
at line 1141
array
toArray()
Get all of the input and files for the request.
at line 1149
bool
offsetExists(mixed $offset)
Determine if the given offset exists.
at line 1162
mixed
offsetGet(mixed $offset)
Get the value at the given offset.
at line 1170
void
offsetSet(mixed $offset, mixed $value)
Set the value at the given offset.
at line 1178
void
offsetUnset(mixed $offset)
Remove the value at the given offset.
at line 1186
static void
flushState()
Flush all static state.
at line 1200
bool
__isset(string $key)
Check if an input element is set on the request.
at line 1208
mixed
__get(string $key)
Get an input element from the request.
at line 38
array
validate(array $rules, mixed ...$params)
No description
at line 38
array
validateWithBag(string $errorBag, array $rules, mixed ...$params)
No description
at line 38
bool
hasValidSignature(bool $absolute = 'true')
No description
at line 38
bool
hasValidRelativeSignature()
No description
at line 38
bool
hasValidSignatureWhileIgnoring(mixed $ignoreQuery = '[]', mixed $absolute = 'true')
No description
at line 38
bool
hasValidRelativeSignatureWhileIgnoring(mixed $ignoreQuery = '[]')
No description
at line 38
bool
inertia()
Registered as a macro by Hypervel\Inertia\InertiaServiceProvider.