Final Class Yiisoft\Validator\Rule\BooleanValue
Contains a set of options to determine if the value is "true" or "false", not limited to boolean type only. What values exactly are considered "true" and "false" can be configured via BooleanValue::$trueValue and BooleanValue::$falseValue settings accordingly. There is also an option to choose between strict and non-strict mode of comparison (see BooleanValue::$strict).
- If the purpose is to check the truthiness only, use Yiisoft\Validator\Rule\TrueValue rule instead.
- As an alternative, see also Yiisoft\Validator\Rule\Type\BooleanType rule, that only strictly allows boolean values and not the ones that evaluates to boolean ("truthy" / "falsy").
See also Yiisoft\Validator\Rule\BooleanValueHandler Corresponding handler performing the actual validation.
Public Methods
Method Details
| public __construct( scalar $trueValue = '1', scalar $falseValue = '0', boolean $strict = false, string $incorrectInputMessage = 'The allowed types for {property} are integer, float, string, ' . 'boolean. {type} given.', string $message = '{Property} must be either "{true}" or "{false}".', boolean|callable|null $skipOnEmpty = null, boolean $skipOnError = false, Closure|null $when = null ): mixed | ||
| $trueValue | scalar |
The value that is considered to be "true". Only scalar values (either int, float, string
or bool) are allowed. Defaults to |
| $falseValue | scalar |
The value that is considered to be "false". Only scalar values (either int, float,
string or bool) are allowed. Defaults to |
| $strict | boolean |
Whether the comparison to $trueValue and $falseValue is strict:
Defaults to |
| $incorrectInputMessage | string |
Error message used when validation fails because the type of validated value is incorrect. Only scalar values are allowed - either int, float, string or bool. Used for more predictable formatting. You may use the following placeholders in the message:
|
| $message | string |
Error message used when validation fails because the validated value does not match neither "true" nor "false" values. You may use the following placeholders in the message:
|
| $skipOnEmpty | boolean|callable|null |
Whether to skip this rule if the validated value is empty / not passed. See Yiisoft\Validator\SkipOnEmptyInterface. |
| $skipOnError | boolean |
Whether to skip this rule if any of the previous rules gave an error. See Yiisoft\Validator\SkipOnErrorInterface. |
| $when | Closure|null |
A callable to define a condition for applying the rule. See Yiisoft\Validator\WhenInterface. |
public function __construct(
private int|float|string|bool $trueValue = '1',
private int|float|string|bool $falseValue = '0',
private bool $strict = false,
private string $incorrectInputMessage = 'The allowed types for {property} are integer, float, string, '
. 'boolean. {type} given.',
private string $message = '{Property} must be either "{true}" or "{false}".',
bool|callable|null $skipOnEmpty = null,
private bool $skipOnError = false,
private ?Closure $when = null,
) {
$this->skipOnEmpty = $skipOnEmpty;
}
Gets the value that is considered to be "false".
| public getFalseValue( ): scalar | ||
| return | scalar |
A scalar value. |
|---|---|---|
public function getFalseValue(): int|float|string|bool
{
return $this->falseValue;
}
| public getHandler( ): string |
public function getHandler(): string
{
return BooleanValueHandler::class;
}
Gets error message used when validation fails because the type of validated value is incorrect.
| public getIncorrectInputMessage( ): string | ||
| return | string |
Error message / template. |
|---|---|---|
public function getIncorrectInputMessage(): string
{
return $this->incorrectInputMessage;
}
Gets error message used when validation fails because the validated value does not match neither "true" nor "false" values.
| public getMessage( ): string | ||
| return | string |
Error message / template. |
|---|---|---|
public function getMessage(): string
{
return $this->message;
}
| public getOptions( ): array |
public function getOptions(): array
{
$messageParameters = [
'true' => $this->trueValue === true ? 'true' : $this->trueValue,
'false' => $this->falseValue === false ? 'false' : $this->falseValue,
];
return [
'trueValue' => $this->trueValue,
'falseValue' => $this->falseValue,
'strict' => $this->strict,
'incorrectInputMessage' => [
'template' => $this->incorrectInputMessage,
'parameters' => $messageParameters,
],
'message' => [
'template' => $this->message,
'parameters' => $messageParameters,
],
'skipOnEmpty' => $this->getSkipOnEmptyOption(),
'skipOnError' => $this->skipOnError,
];
}
Defined in: Yiisoft\Validator\Rule\Trait\SkipOnEmptyTrait::getSkipOnEmpty()
A getter for $skipOnEmpty property.
| public getSkipOnEmpty( ): boolean|callable|null | ||
| return | boolean|callable|null |
A current raw (non-normalized) value. |
|---|---|---|
public function getSkipOnEmpty(): bool|callable|null
{
return $this->skipOnEmpty;
}
Gets the value that is considered to be "true".
| public getTrueValue( ): scalar | ||
| return | scalar |
A scalar value. |
|---|---|---|
public function getTrueValue(): int|float|string|bool
{
return $this->trueValue;
}
Defined in: Yiisoft\Validator\Rule\Trait\WhenTrait::getWhen()
A getter for $when property.
| public getWhen( ): Closure|null | ||
| return | Closure|null |
Current value:
|
|---|---|---|
public function getWhen(): ?Closure
{
return $this->when;
}
Whether the comparison to $trueValue and $falseValue is strict.
| public isStrict( ): boolean | ||
| return | boolean |
|
|---|---|---|
public function isStrict(): bool
{
return $this->strict;
}
Defined in: Yiisoft\Validator\Rule\Trait\SkipOnErrorTrait::shouldSkipOnError()
A getter for $skipOnError property.
| public shouldSkipOnError( ): boolean | ||
| return | boolean |
Current value. |
|---|---|---|
public function shouldSkipOnError(): bool
{
return $this->skipOnError;
}
Defined in: Yiisoft\Validator\Rule\Trait\SkipOnEmptyTrait::skipOnEmpty()
An immutable setter to change $skipOnEmpty property.
| public skipOnEmpty( boolean|callable|null $value ): $this | ||
| $value | boolean|callable|null |
A new value. |
| return | $this |
The new instance with a changed value. |
|---|---|---|
public function skipOnEmpty(bool|callable|null $value): static
{
$new = clone $this;
$new->skipOnEmpty = $value;
return $new;
}
Defined in: Yiisoft\Validator\Rule\Trait\SkipOnErrorTrait::skipOnError()
An immutable setter to change $skipOnError property.
| public skipOnError( boolean $value ): $this | ||
| $value | boolean |
A new value. |
| return | $this |
The new instance with a changed value. |
|---|---|---|
public function skipOnError(bool $value): static
{
$new = clone $this;
$new->skipOnError = $value;
return $new;
}
Defined in: Yiisoft\Validator\Rule\Trait\WhenTrait::when()
An immutable setter to change $when property.
| public when( Closure|null $value ): $this | ||
| $value | Closure|null |
A new value:
|
| return | $this |
The new instance with a changed value. |
|---|---|---|
public function when(?Closure $value): static
{
$new = clone $this;
$new->when = $value;
return $new;
}
Signup or Login in order to comment.