symfony2实体验证regexp az AZ 0-9

Mat*_*der 5 php regex validation symfony

在symfony2中有一个内置的方法来验证字符串(在我的情况下是用户名和另一个属性)对经典的az,AZ和0-9规则吗?

我是否必须在regexp中将其作为自定义验证器编写?(如果是这样,提示在哪里看,表示赞赏)

Ahm*_*ani 10

您应该使用本机Regex验证器,

它就像使用Regex断言注释一样简单,如下所示,

use Symfony\Component\Validator\Constraints as Assert;

class YourClass
{
   /**
    * @Assert\Regex("/[a-zA-Z0-9]/")
    */        
    protected $yourProperty;
}
Run Code Online (Sandbox Code Playgroud)

您还可以通过将match选项设置为自定义验证,false以断言给定字符串不匹配.

/**
 * @Assert\Regex(
 *     pattern="/[a-zA-Z0-9]/",
 *     match=false,
 *     message="Your property should match ..."
 * )
 */
protected $yourProperty;
Run Code Online (Sandbox Code Playgroud)

使用注释并不是唯一的方法,你也可以使用YML,XML和PHP,查看文档,这里有很多解释很好的例子来解决这个问题.