IParameter
extends
ArrayAccess, Iterator, JsonSerializable
in
Enable safe handling of untrusted data received as string, array, or null values.
A parameter is suitable to encapsulate a value received as a string or array (or NULL) such as query parameters from a web request or database query result. It is used to validate and safely convert inputs to a more useful type.
Tags
Table of Contents
Methods
- __toString() : string
- asArray() : array<string|int, mixed>
- asArrayOrNull() : array<string|int, mixed>|null
- asArrayOrString() : array<string|int, mixed>|string
- asArrayRecursive() : array<string|int, mixed>
- asArrayRecursiveOrNull() : array<string|int, mixed>|null
- asArrayRecursiveOrString() : array<string|int, mixed>|string
- asBool() : bool
- asBoolOrNull() : bool|null
- asConstant() : string
- Requires the parameter to be exactly the given value.
- asCurrency() : int
- asCurrencyOrEmpty() : int|null
- asCurrencyOrNull() : int|null
- asDate() : string
- asDateOrNull() : string|null
- asDateTime() : string
- asDateTimeOrNull() : string|null
- asEmailAddress() : string
- asEmailAddressOrEmpty() : string|null
- asEmailAddressOrNull() : string|null
- asEmailUsername() : string
- asEmailUsernameOrEmpty() : string|null
- asEmailUsernameOrNull() : string|null
- asExistingDirectory() : string
- asExistingDirectoryOrEmpty() : string|null
- asExistingDirectoryOrNull() : string|null
- asExistingFilename() : string
- asExistingFilenameOrEmpty() : string|null
- asExistingFilenameOrNull() : string|null
- asFloat() : float
- asFloatOrEmpty() : float|null
- asFloatOrNull() : float|null
- asFloatRangeClosed() : float
- asFloatRangeClosedOrEmpty() : float|null
- asFloatRangeClosedOrNull() : float|null
- asFloatRangeHalfClosed() : float
- asFloatRangeHalfClosedOrEmpty() : float|null
- asFloatRangeHalfClosedOrNull() : float|null
- asFloatRangeOpen() : float
- asFloatRangeOpenOrEmpty() : float|null
- asFloatRangeOpenOrNull() : float|null
- asHostname() : string
- asHostnameOrEmpty() : string|null
- asHostnameOrNull() : string|null
- asInt() : int
- asIntOrEmpty() : int|null
- Returns the integer value or null for the empty string.
- asIntOrNull() : int|null
- asIntRangeClosed() : int
- asIntRangeClosedOrEmpty() : int|null
- asIntRangeClosedOrNull() : int|null
- asIntRangeHalfClosed() : int
- asIntRangeHalfClosedOrEmpty() : int|null
- asIntRangeHalfClosedOrNull() : int|null
- asIntRangeOpen() : int
- asIntRangeOpenOrEmpty() : int|null
- asIntRangeOpenOrNull() : int|null
- asIP() : string
- asIPOrEmpty() : string|null
- asIPOrNull() : string|null
- asIPv4() : string
- asIPv4OrEmpty() : string|null
- asIPv4OrNull() : string|null
- asIPv6() : string
- asIPv6OrEmpty() : string|null
- asIPv6OrNull() : string|null
- asJSON() : string
- asKeyword() : string
- asKeywordOrEmpty() : string|null
- asKeywordOrNull() : string|null
- asMap() : string
- asMapOrEmpty() : string|null
- asMapOrNull() : string|null
- asNonexistentFilename() : string
- asNonexistentFilenameOrEmpty() : string|null
- asNonexistentFilenameOrNull() : string|null
- asPositiveFloat() : float
- asPositiveFloatOrEmpty() : float|null
- asPositiveFloatOrNull() : float|null
- asPositiveInt() : int
- asPositiveIntOrEmpty() : int|null
- asPositiveIntOrNull() : int|null
- asRoundedFloat() : float
- asRoundedFloatOrEmpty() : float|null
- asRoundedFloatOrNull() : float|null
- asRoundedInt() : int
- asRoundedIntOrEmpty() : int|null
- asRoundedIntOrNull() : int|null
- asString() : string
- asStringOrNull() : string|null
- asTime() : string
- asTimeOrNull() : string|null
- asTimeStamp() : int
- asTimeStampOrNull() : int|null
- asUnsignedFloat() : float
- asUnsignedFloatOrEmpty() : float|null
- asUnsignedFloatOrNull() : float|null
- asUnsignedInt() : int
- asUnsignedIntOrEmpty() : int|null
- asUnsignedIntOrNull() : int|null
- getValue() : array<string|int, mixed>|string|null
- has() : bool
- indexOrDefault() : IParameter
- indexOrNull() : IParameter|null
- is() : bool
- Provides an easy way to test whether the parameter is equal to a given value without getting too hung up on types. Int, string, array, and float values are compared using ==. In the case of arrays, the parameter's value is recursively collapsed first. If the given value is null, the parameter's value must be null to match.
- isArray() : bool
- isBool() : bool
- Checks if the value is parseable as a boolean. Note that null is considered parseable as a boolean (false).
- isEmpty() : bool
- Returns true if the value is null, an empty array, or an empty string.
- isNull() : bool
- isSet() : bool
- isString() : bool
- new() : static
Methods
__toString()
public
__toString() : string
Return values
stringasArray()
public
asArray() : array<string|int, mixed>
Return values
array<string|int, mixed>asArrayOrNull()
public
asArrayOrNull() : array<string|int, mixed>|null
Return values
array<string|int, mixed>|nullasArrayOrString()
public
asArrayOrString() : array<string|int, mixed>|string
Return values
array<string|int, mixed>|stringasArrayRecursive()
public
asArrayRecursive() : array<string|int, mixed>
Return values
array<string|int, mixed>asArrayRecursiveOrNull()
public
asArrayRecursiveOrNull() : array<string|int, mixed>|null
Return values
array<string|int, mixed>|nullasArrayRecursiveOrString()
public
asArrayRecursiveOrString() : array<string|int, mixed>|string
Return values
array<string|int, mixed>|stringasBool()
public
asBool() : bool
Return values
boolasBoolOrNull()
public
asBoolOrNull() : bool|null
Return values
bool|nullasConstant()
Requires the parameter to be exactly the given value.
public
asConstant(string $i_stConstant) : string
Parameters
- $i_stConstant : string
Return values
stringasCurrency()
public
asCurrency() : int
Return values
intasCurrencyOrEmpty()
public
asCurrencyOrEmpty() : int|null
Return values
int|nullasCurrencyOrNull()
public
asCurrencyOrNull() : int|null
Return values
int|nullasDate()
public
asDate() : string
Return values
stringasDateOrNull()
public
asDateOrNull() : string|null
Return values
string|nullasDateTime()
public
asDateTime() : string
Return values
stringasDateTimeOrNull()
public
asDateTimeOrNull() : string|null
Return values
string|nullasEmailAddress()
public
asEmailAddress() : string
Return values
stringasEmailAddressOrEmpty()
public
asEmailAddressOrEmpty() : string|null
Return values
string|nullasEmailAddressOrNull()
public
asEmailAddressOrNull() : string|null
Return values
string|nullasEmailUsername()
public
asEmailUsername() : string
Return values
stringasEmailUsernameOrEmpty()
public
asEmailUsernameOrEmpty() : string|null
Return values
string|nullasEmailUsernameOrNull()
public
asEmailUsernameOrNull() : string|null
Return values
string|nullasExistingDirectory()
public
asExistingDirectory() : string
Return values
stringasExistingDirectoryOrEmpty()
public
asExistingDirectoryOrEmpty() : string|null
Return values
string|nullasExistingDirectoryOrNull()
public
asExistingDirectoryOrNull() : string|null
Return values
string|nullasExistingFilename()
public
asExistingFilename() : string
Return values
stringasExistingFilenameOrEmpty()
public
asExistingFilenameOrEmpty() : string|null
Return values
string|nullasExistingFilenameOrNull()
public
asExistingFilenameOrNull() : string|null
Return values
string|nullasFloat()
public
asFloat() : float
Return values
floatasFloatOrEmpty()
public
asFloatOrEmpty() : float|null
Return values
float|nullasFloatOrNull()
public
asFloatOrNull() : float|null
Return values
float|nullasFloatRangeClosed()
public
asFloatRangeClosed(float $i_fMin, float $i_fMax) : float
Parameters
- $i_fMin : float
- $i_fMax : float
Return values
floatasFloatRangeClosedOrEmpty()
public
asFloatRangeClosedOrEmpty(float $i_fMin, float $i_fMax) : float|null
Parameters
- $i_fMin : float
- $i_fMax : float
Return values
float|nullasFloatRangeClosedOrNull()
public
asFloatRangeClosedOrNull(float $i_fMin, float $i_fMax) : float|null
Parameters
- $i_fMin : float
- $i_fMax : float
Return values
float|nullasFloatRangeHalfClosed()
public
asFloatRangeHalfClosed(float $i_fMin, float $i_fMax) : float
Parameters
- $i_fMin : float
- $i_fMax : float
Return values
floatasFloatRangeHalfClosedOrEmpty()
public
asFloatRangeHalfClosedOrEmpty(float $i_fMin, float $i_fMax) : float|null
Parameters
- $i_fMin : float
- $i_fMax : float
Return values
float|nullasFloatRangeHalfClosedOrNull()
public
asFloatRangeHalfClosedOrNull(float $i_fMin, float $i_fMax) : float|null
Parameters
- $i_fMin : float
- $i_fMax : float
Return values
float|nullasFloatRangeOpen()
public
asFloatRangeOpen(float $i_fMin, float $i_fMax) : float
Parameters
- $i_fMin : float
- $i_fMax : float
Return values
floatasFloatRangeOpenOrEmpty()
public
asFloatRangeOpenOrEmpty(float $i_fMin, float $i_fMax) : float|null
Parameters
- $i_fMin : float
- $i_fMax : float
Return values
float|nullasFloatRangeOpenOrNull()
public
asFloatRangeOpenOrNull(float $i_fMin, float $i_fMax) : float|null
Parameters
- $i_fMin : float
- $i_fMax : float
Return values
float|nullasHostname()
public
asHostname() : string
Return values
stringasHostnameOrEmpty()
public
asHostnameOrEmpty() : string|null
Return values
string|nullasHostnameOrNull()
public
asHostnameOrNull() : string|null
Return values
string|nullasInt()
public
asInt() : int
Return values
intasIntOrEmpty()
Returns the integer value or null for the empty string.
public
asIntOrEmpty() : int|null
Return values
int|nullasIntOrNull()
public
asIntOrNull() : int|null
Return values
int|nullasIntRangeClosed()
public
asIntRangeClosed(int $i_iMin, int $i_iMax) : int
Parameters
- $i_iMin : int
- $i_iMax : int
Return values
intasIntRangeClosedOrEmpty()
public
asIntRangeClosedOrEmpty(int $i_iMin, int $i_iMax) : int|null
Parameters
- $i_iMin : int
- $i_iMax : int
Return values
int|nullasIntRangeClosedOrNull()
public
asIntRangeClosedOrNull(int $i_iMin, int $i_iMax) : int|null
Parameters
- $i_iMin : int
- $i_iMax : int
Return values
int|nullasIntRangeHalfClosed()
public
asIntRangeHalfClosed(int $i_iMin, int $i_iMax) : int
Parameters
- $i_iMin : int
- $i_iMax : int
Return values
intasIntRangeHalfClosedOrEmpty()
public
asIntRangeHalfClosedOrEmpty(int $i_iMin, int $i_iMax) : int|null
Parameters
- $i_iMin : int
- $i_iMax : int
Return values
int|nullasIntRangeHalfClosedOrNull()
public
asIntRangeHalfClosedOrNull(int $i_iMin, int $i_iMax) : int|null
Parameters
- $i_iMin : int
- $i_iMax : int
Return values
int|nullasIntRangeOpen()
public
asIntRangeOpen(int $i_iMin, int $i_iMax) : int
Parameters
- $i_iMin : int
- $i_iMax : int
Return values
intasIntRangeOpenOrEmpty()
public
asIntRangeOpenOrEmpty(int $i_iMin, int $i_iMax) : int|null
Parameters
- $i_iMin : int
- $i_iMax : int
Return values
int|nullasIntRangeOpenOrNull()
public
asIntRangeOpenOrNull(int $i_iMin, int $i_iMax) : int|null
Parameters
- $i_iMin : int
- $i_iMax : int
Return values
int|nullasIP()
public
asIP() : string
Return values
stringasIPOrEmpty()
public
asIPOrEmpty() : string|null
Return values
string|nullasIPOrNull()
public
asIPOrNull() : string|null
Return values
string|nullasIPv4()
public
asIPv4() : string
Return values
stringasIPv4OrEmpty()
public
asIPv4OrEmpty() : string|null
Return values
string|nullasIPv4OrNull()
public
asIPv4OrNull() : string|null
Return values
string|nullasIPv6()
public
asIPv6() : string
Return values
stringasIPv6OrEmpty()
public
asIPv6OrEmpty() : string|null
Return values
string|nullasIPv6OrNull()
public
asIPv6OrNull() : string|null
Return values
string|nullasJSON()
public
asJSON() : string
Return values
stringasKeyword()
public
asKeyword(array<int, string> $i_rKeywords) : string
Parameters
- $i_rKeywords : array<int, string>
-
List of allowable keywords.
Return values
stringasKeywordOrEmpty()
public
asKeywordOrEmpty(array<int, string> $i_rKeywords) : string|null
Parameters
- $i_rKeywords : array<int, string>
-
List of allowable keywords.
Return values
string|nullasKeywordOrNull()
public
asKeywordOrNull(array<int, string> $i_rKeywords) : string|null
Parameters
- $i_rKeywords : array<int, string>
-
List of allowable keywords.
Return values
string|nullasMap()
public
asMap(array<string, mixed> $i_rMap) : string
Parameters
- $i_rMap : array<string, mixed>
Return values
string —The mapped value for the key specified by this parameter.
asMapOrEmpty()
public
asMapOrEmpty(array<string, mixed> $i_rMap) : string|null
Parameters
- $i_rMap : array<string, mixed>
Return values
string|null —The mapped value for the key specified by this parameter, or null if the parameter is the empty string.
asMapOrNull()
public
asMapOrNull(array<string, mixed> $i_rMap) : string|null
Parameters
- $i_rMap : array<string, mixed>
Return values
string|null —The mapped value for the key specified by this parameter, or null.
asNonexistentFilename()
public
asNonexistentFilename() : string
Return values
stringasNonexistentFilenameOrEmpty()
public
asNonexistentFilenameOrEmpty() : string|null
Return values
string|nullasNonexistentFilenameOrNull()
public
asNonexistentFilenameOrNull() : string|null
Return values
string|nullasPositiveFloat()
public
asPositiveFloat() : float
Return values
floatasPositiveFloatOrEmpty()
public
asPositiveFloatOrEmpty() : float|null
Return values
float|nullasPositiveFloatOrNull()
public
asPositiveFloatOrNull() : float|null
Return values
float|nullasPositiveInt()
public
asPositiveInt() : int
Return values
intasPositiveIntOrEmpty()
public
asPositiveIntOrEmpty() : int|null
Return values
int|nullasPositiveIntOrNull()
public
asPositiveIntOrNull() : int|null
Return values
int|nullasRoundedFloat()
public
asRoundedFloat([int $i_iPrecision = 0 ]) : float
Parameters
- $i_iPrecision : int = 0
Return values
floatasRoundedFloatOrEmpty()
public
asRoundedFloatOrEmpty([int $i_iPrecision = 0 ]) : float|null
Parameters
- $i_iPrecision : int = 0
Return values
float|nullasRoundedFloatOrNull()
public
asRoundedFloatOrNull([int $i_iPrecision = 0 ]) : float|null
Parameters
- $i_iPrecision : int = 0
Return values
float|nullasRoundedInt()
public
asRoundedInt([int $i_iPrecision = 0 ]) : int
Parameters
- $i_iPrecision : int = 0
Return values
intasRoundedIntOrEmpty()
public
asRoundedIntOrEmpty([int $i_iPrecision = 0 ]) : int|null
Parameters
- $i_iPrecision : int = 0
Return values
int|nullasRoundedIntOrNull()
public
asRoundedIntOrNull([int $i_iPrecision = 0 ]) : int|null
Parameters
- $i_iPrecision : int = 0
Return values
int|nullasString()
public
asString() : string
Return values
stringasStringOrNull()
public
asStringOrNull() : string|null
Return values
string|nullasTime()
public
asTime() : string
Return values
stringasTimeOrNull()
public
asTimeOrNull() : string|null
Return values
string|nullasTimeStamp()
public
asTimeStamp() : int
Return values
intasTimeStampOrNull()
public
asTimeStampOrNull() : int|null
Return values
int|nullasUnsignedFloat()
public
asUnsignedFloat() : float
Return values
floatasUnsignedFloatOrEmpty()
public
asUnsignedFloatOrEmpty() : float|null
Return values
float|nullasUnsignedFloatOrNull()
public
asUnsignedFloatOrNull() : float|null
Return values
float|nullasUnsignedInt()
public
asUnsignedInt() : int
Return values
intasUnsignedIntOrEmpty()
public
asUnsignedIntOrEmpty() : int|null
Return values
int|nullasUnsignedIntOrNull()
public
asUnsignedIntOrNull() : int|null
Return values
int|nullgetValue()
public
getValue() : array<string|int, mixed>|string|null
Return values
array<string|int, mixed>|string|nullhas()
public
has(int|string $key) : bool
Parameters
- $key : int|string
Return values
bool —True if this is an array that has the given key, otherwise false.
If this parameter is not an array, disaster will ensue.
indexOrDefault()
public
indexOrDefault(int|string $key, array<string|int, mixed>|string|null $default) : IParameter
Parameters
- $key : int|string
- $default : array<string|int, mixed>|string|null
Return values
IParameter —Returns a parameter containing the value for a given key, or the specified default value if the key is not set.
If this parameter is not an array, disaster will ensue.
indexOrNull()
public
indexOrNull(int|string $key) : IParameter|null
Parameters
- $key : int|string
Return values
IParameter|null —Returns a parameter containing the value for a given key, or null if the key is not set.
If this parameter is not an array, disaster will ensue.
is()
Provides an easy way to test whether the parameter is equal to a given value without getting too hung up on types. Int, string, array, and float values are compared using ==. In the case of arrays, the parameter's value is recursively collapsed first. If the given value is null, the parameter's value must be null to match.
public
is(array<string|int, mixed>|int|string|float|bool|IParameter|null $i_xValue) : bool
Parameters
- $i_xValue : array<string|int, mixed>|int|string|float|bool|IParameter|null
Return values
bool —True if this parameter equals the given value.
isArray()
public
isArray() : bool
Return values
boolisBool()
Checks if the value is parseable as a boolean. Note that null is considered parseable as a boolean (false).
public
isBool() : bool
Return values
bool —True if the value is parseable as a boolean, otherwise false.
isEmpty()
Returns true if the value is null, an empty array, or an empty string.
public
isEmpty() : bool
This is useful for interacting with parameters that can be optionally left blank.
Return values
boolisNull()
public
isNull() : bool
Return values
boolisSet()
public
isSet() : bool
Return values
boolisString()
public
isString() : bool
Return values
boolnew()
public
new(array<string|int, mixed>|string|null $xValue) : static
Parameters
- $xValue : array<string|int, mixed>|string|null