GitHub精选 | PHP表单验证解决方案

GitHub精选 | PHP表单验证解决方案《GitHub精选》是我们分享Github中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期推荐的是一个PHP表单验证解决方案——微擎

大家好,欢迎来到IT知识分享网。

《GitHub精选》是我们分享Github中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期推荐的是一个PHP表单验证解决方案——微擎表单验证。

表单验证是每个网站不可缺少的一个组成部分,例如登录判断、提交信息、查询信息、反馈信息等,它是网站管理者与浏览者之间沟通的桥梁。微擎提供了更加方便、快捷、安全的扩展,几乎满足目前所有的验证需求。

GitHub精选 | PHP表单验证解决方案

微擎基于Laravel做了如下扩展:

  • 可通过类的方式定义一个验证器
  • 增加验证场景
  • 增加规则管理器
  • 增加数据默认值
  • 增加数据过滤器
  • 增加场景事件
  • 修改了自定义验证规则
  • 自定义消息增加了对内容的引用
  • 继承集合类增加一个验证集合

验证器支持Laravel的内置规则,内置规则文档可查看规则文档:

表单验证 |《Laravel 7 中文文档 7.x》| Laravel China 社区

示例:

1、简单验证

支持简单定义一个验证器并进行验证,如果验证通过,则返回所有通过验证的值,如未通过,则抛出一个W7\Validate\Exception\ValidateException异常

try { $data = Validate::make([ 'user' => 'required|email', 'pass' => 'required|lengthBetween:6,16', ], [ 'user.required' => '请输入用户名', 'user.email' => '用户名格式错误', 'pass.required' => '请输入密码', 'pass.lengthBetween' => '密码长度为6~16位', ])->check($data); } catch (ValidateException $e) { echo $e->getMessage(); }

2、验证器定义

为具体的验证场景或者数据表单定义验证器类,我们需要继承W7\Validate\Validate类,然后实例化后直接调用验证类的check方法即可完成验证

class LoginValidate extends Validate { protected $rule = [ 'user' => 'required|email', 'pass' => 'required|digits_between:6,16', ]; protected $message = [ 'user.required' => '请输入用户名', 'user.email' => '用户名格式错误', 'pass.required' => '请输入密码', 'pass.digits_between' => '密码长度为6~16位', ]; }

3、数据验证

$data = [ 'user' => '123@.com', 'pass' => '' ]; $validate = new LoginValidate(); $validate->check($data);

此时会抛出一个W7\Validate\Exception\ValidateException异常,message为请输入密码

$data = [ 'user' => '123@.com', 'pass' => '' ]; $validate = new LoginValidate(); $data = $validate->check($data);

验证成功,并返回通过验证的值,返回的值为数组类型。

GitHub精选 | PHP表单验证解决方案

更多内容请大家自行前往阅读。


Gitee:https://gitee.com/we7coreteam/w7-engine-validate

表单验证: PHP验证解决方案,一个让你的表单验证更为方便,快捷,安全的扩展,满足你的一切验证需求。

往期推荐:

免费和开源的电子商务解决方案

轻量级实时物理渲染引擎

大数据入门指南BigData-Notes

基于Spring Cloud的分布式的物联网(IOT)平台

微软面向AI的量化投资平台

场景化低代码(LowCode)搭建工作台

开源量化交易平台开发框架

腾讯开源的人脸照片修复算法

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/46959.html

(0)
上一篇 2024-09-27 12:15
下一篇 2024-10-03 21:33

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信