验证(Validate)

2020-11-05  by  

架构定义

PHPZlc的验证体系,主要由两项技术支撑。

  1. Symfony-Validate (Symfony 官方认证,自行阅读官方文档)

  2. PHPZlc-Validate (PHPZlc自研组件, 下文介绍)

使用说明

  1. 两种组件,都可以直接使用。

  2. Symfony-Validate与框架的具体结合,可以前往错误收集了解。

  3. Symfony-Validate是一种通过在类中为属性添加验证注释的方法实现快捷验证。 是symfony原生支持的验证技术。

  4. PHPZlc-Validate是一种简单补充措施,其简单直接。其主要提供两个功能,常量正则和返回bool的静态验证方法,可以在系统的任何位置简单调用,快捷验证。

PHPZlc-Validate文档

  1. 仓库地址

    https://github.com/phpzlc/validate

  2. 主要类

     PHPZlc\Validate\Validate:Class  //存放静态验证方法  只返回真假
        
     PHPZlc\Validate\Regular:Class  //存放定义为常量的验证正则
    
  3. 示例

     Validate::isRealEmpty($variable); //验证是否真实为空,解决empty()方法对0的误判。
    
     Regular::REG_PRICE; //正则 价格:2位小数
    
  4. 常量正则如何和Symfony-Validate结合使用

     @Assert\Choice(choices=YourClass::SOME_CONSTANT)
    

PHPZlc-Validate维护发行说明

正则集成成库,是存在严重的问题的。因为正则一方面是普遍规则,又一方面又具有个性化。

个性化举个例子,比如密码强度。普遍情况下,安全度适中的规则都可以接受。但是密码强度经常每个用户有自己的需要,这就产生了矛盾。

所以我们需要明白这一点,才能更好的使用其便利的地方。

  1. 解决了什么问题?

    将常用的正则和验证方法集成,方便使用,避免寻找和产生bug。

    维护这些正则,使其保持最新的标准,例如手机号这类验证规则不是一直不变的。

    统一项目中验证的标准,避免因为人员差异,导致验证规则的混乱。

  2. 维护的目标

    加入更多通用常用的正则和方法。

    保持正则和方法的普遍适用性,实时性,正确性。

    不会删除正则库和方法库中的代码。

  3. 明显短板和使用时注意

    拿密码正则来说,不同系统,不同项目对于密码强度和组成都是不一致的,但从组件的特性,我们可以知道,在维护中是不可能为某一种特定业务维护的,我们对于密码正则的维护遵循普遍适用性。

    所以你应该基于这样的认知,使用此工具。如果你的业务中存在明确定义的验证规则,你应当自行定义正则或方法。

找到错别字了?本文档有什么问题么?分叉并编辑 它 !

CJayhe

谢谢您的赞赏~

使用微信扫描二维码完成支付

抱歉弹框打扰,系统检测到您今日累计浏览时长已达120秒。如果我们的项目对您有帮助,在 关闭窗口之前,希望能够阅读弹框内容,帮助我们变得更好。

一个成功的项目,实现功能只是基础,合理的架构,对资源的调度能力才是灵魂。 PHPZlc, 致力于在Symfony的基础上提供“知行合一”的项目开发方案。

如果您有关切问题和好的想法:

提交

如果您想帮助我们,可以为我们点亮星星,也可以提供资金支持。

您还可以通过以下渠道,关注我们,获取最新的框架动态,帮助项目获取人气,扩大影响力。

开源伙伴招募:https://phpzlc.com/blog/11.html

由于我们无法获取您是否已经是我们的会员了,所以此弹框每日都会弹出一次,关闭