fangstar/php-validator
Composer 安装命令:
composer create-project fangstar/php-validator
包简介
PHP参数校验组件
README 文档
README
Note: PHP parameter check file check validation
summary
这是一个基于PHP5.6以上版本的PHP参数校验组件,其v1.0.0版本的作者Qvil_Young,使用过Laravel5.2的Validation组件后,发现其存在校验BUG、用法歧义之处,并且文档不正确等带来诸多问题... 因此才决定自己开发一个好用的组件,独立于任何框架,和Laravel分离开来,功能简单强大!
该组件不依赖任何其他组件,以及PHP特殊少见的扩展。
该组件针对HTTP(S)协议下Web请求和响应的场景,提供了N多种对变量类型和常见字符串类型进行严格校验的规则,同时提供了变量类型的转换和别名命名!
该组件暂不打算耦合ORM去校验字段的唯一性,作者觉得那样做是多余的!
以下是php-validator组件的特性:
- 支持对上传的文件进行校验(比如文件类型,文件大小区间)
- 准确校验PHP的各种数据类型、以及常见字符串的数据类型(比如字母、数字、邮箱、中国地区的手机号、IP地址和URL等)
- 支持多个参数之间的关联性校验(比如当参数a传入时,参数b也必须传入)
- 准确判断数值的大小和长度,以及它们的区间(比如,校验年龄在18岁到59岁之间,字符串长度在12到20个之间)
- 支持浮点类型的准确校验,并且支持精度转换(比如将money字段转成2为小数,同时会校验原参数是否是浮点数)
- 高级用法:支持字符串形式的一维数组校验,比如字符串"[1,2,3,4]"的校验,同时支持将其转成PHP数组,数组中的元素也可以指定数据类型
- 支持自定义提示文案,语言文件默认路径使用Laravel5.2的项目结构,放于 resources/lang/下。如有特殊需求也可以配置
以下是QP v1.0.0 版本功能可能的不足之处:
- 组件对外提供的方法和校验规则已经稳定,不会改变。如果你发现BUG,请发邮件给作者!Qvil Young
Install
使用Composer工具安装项目(使用方法,自行学习)
Via Composer
$ composer require fangstar/php-validator
将lang文件夹下面的语言包文件,拷贝到和verdor目录同级下的 resources/lang/ 文件夹下。
或者根据自身需求,修改config.php文件的lang配置项
基础用法
<?php use FangStarNet\PHPValidator\Validator; $data = $_GET; Validator::make($data, [ "id" => "present|alpha_num|length:32", // 校验id字段必传,且由数字字母组成,长度为32 ]); if (Validator::has_fails()) { echo Validator::error_msg(); // 校验不通过,打印提示信息(默认使用语言包中的文案) exit; } else { echo "参数校验已经通过"; }
Document
Change log
Please see CHANGELOG for more information what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please email yangqingwu@fangstar.net instead of using the issue tracker.
Credits
License
The MIT License (MIT). Please see License File for more information.
fangstar/php-validator 适用场景与选型建议
fangstar/php-validator 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 7.5k 次下载、GitHub Stars 达 32, 最近一次更新时间为 2016 年 11 月 17 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「laravel」 「parameters」 「Php Validator」 「fangstar」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 fangstar/php-validator 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 fangstar/php-validator 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 fangstar/php-validator 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Composer script handling your ignored parameter file
Array wrapper that eases the retrieval of values. Has parameters, options and settings and traits for inclusion in other libraries.
Adds request-parameter validation to the SLIM 3.x PHP framework
Inputs put in same way - basic interfaces
Parameters provider
Laravel global settings, set/get global settings for your app
统计信息
- 总下载量: 7.5k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 32
- 点击次数: 3
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2016-11-17