arondeparon / laravel-request-sanitizer
一个易于使用的请求清理器,允许您在验证之前清理表单数据。
6.0.0
2024-06-16 21:41 UTC
Requires
- php: ^8.1
- symfony/http-foundation: ^4.3.4|>=5.1.3|^6.0
Requires (Dev)
- mockery/mockery: ^1.4
- orchestra/testbench: ^6.0|^7.0|^8.0|^9.0
- phpunit/phpunit: ^8.0|^9.0|^10.0
README
arondeparon/laravel-request-sanitizer 包提供了一个流畅的接口,在验证之前清理表单请求。
为什么我要使用这个包?
通常,验证请求是不够的。请求清理器允许您在将数据传递给验证器之前轻松地操作表单数据。您可以在几分钟内开始使用它,并且它与 Laravel 的 FormRequest 对象完全兼容。
目录
如何使用
语法类似于将 rules 添加到 表单请求 的方式。
class StoreCustomerInformationRequest extends FormRequest { use SanitizesInputs; protected $sanitizers = [ 'lastname' => [ Capitalize::class, ], 'mobile_phone' => [ RemoveNonNumeric::class ], ]; }
安装
composer require arondeparon/laravel-request-sanitizer
用法
- 将
SanitizesInputs特性添加到您的表单请求中。 - 编写自己的清理器或使用提供的清理器之一,并将它们添加到表单请求的
$sanitizers属性中。 - 现在,在验证之前,您的请求数据将被清理。
预定义清理器
Trim- 简单的 PHPtrim()实现TrimDuplicateSpaces将重复空格替换为单个空格。RemoveNonNumeric- 删除任何非数字字符Capitalize- 将字符串的第一个字符转换为大写Uppercase- 将字符串转换为大写Lowercase- 将字符串转换为小写FilterVars- 简单的 PHPfilter_var清理器CarbonDate- 将字符串转换为 Carbon 对象- 欢迎贡献!
FilterVars 使用
FilterVars 清理器作为默认 PHP filter_var 函数的包装器。它接受与原始函数相同的(可选)参数。两个参数都可以是 array 或 string 类型
{
protected $sanitizers = [
'last_name' => [
FilterVars::class => [
'filter' => FILTER_SANITIZE_STRING,
'options' => FILTER_FLAG_STRIP_BACKTICK
]
]
];
}
有关 filter_vars 的更多信息,请参阅 https://php.ac.cn/manual/en/function.filter-var.php。
编写自己的清理器
通过实现 Sanitizer 接口来编写自己的清理器,该接口只需要一个方法。
interface Sanitizer { public function sanitize($input); }
测试
$ composer test
致谢
许可证
MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件。