IsFalse
验证一个值是否为 false
。具体来说,这会检查该值是否完全等于 false
、完全等于整数 0
或完全等于字符串 '0'
。
另请参阅 IsTrue。
应用于 | 属性或方法 |
类 | IsFalse |
验证器 | IsFalseValidator |
基本用法
The IsFalse
约束可以应用于属性或 “getter” 方法,但在后一种情况下最有用。例如,假设你想保证某个 state
属性不在动态 invalidStates
数组中。首先,你需要创建一个 “getter” 方法
1 2 3 4 5 6 7 8
protected string $state;
protected array $invalidStates = [];
public function isStateInvalid(): bool
{
return in_array($this->state, $this->invalidStates);
}
在这种情况下,只有当 isStateInvalid()
方法返回 false 时,底层对象才是有效的
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
// src/Entity/Author.php
namespace App\Entity;
use Symfony\Component\Validator\Constraints as Assert;
class Author
{
#[Assert\IsFalse(
message: "You've entered an invalid state."
)]
public function isStateInvalid(): bool
{
// ...
}
}
注意
与大多数其他约束一样,null
被认为是有效值。这是为了允许使用可选值。如果该值是强制性的,一个常见的解决方案是将此约束与 NotNull 结合使用。
这项工作,包括代码示例,根据 Creative Commons BY-SA 3.0 许可协议获得许可。