adamthehutt / laravel-sanitized-requests
此包已 弃用 并不再维护。未建议替代包。
在验证之前清洗请求参数
v0.4.0
2020-09-24 02:51 UTC
Requires
- php: >=7.3
- illuminate/database: ^5.8 | ^6.0 | ^7.0 | ^8.0
- illuminate/support: ^5.8 | ^6.0 | ^7.0 | ^8.0
Requires (Dev)
- orchestra/testbench: ^4.0
- phpunit/phpunit: ^8.2
README
在传递到验证之前清洗请求输入。
安装
composer require adamthehutt/laravel-sanitized-requests
用法
创建一个请求类,并使用 SanitizesInput
特性。然后实现 sanitize(Sanitizer $sanitizer)
方法以在验证之前清理用户输入。
use AdamTheHutt\SanitizedRequests\SanitizesInput; use AdamTheHutt\SanitizedRequests\Sanitizer; use Illuminate\Foundation\Http\FormRequest; class StoreItem extends FormRequest { use SanitizesInput; public function sanitize(Sanitizer $sanitizer): void { $sanitizer->castToInt("user_id") ->castToBoolean("for_sale") ->castToFloat("price") ->forgetIfEmpty("item_description") ->trimWhitespace("nested.*.wildcard.param"); } }
清洗器
目前支持以下清洗方法
- castToBool($key) - 将字符串输入值转换为布尔值
- castToInt($key) - 将字符串输入值转换为整数
- castToFloat($key) - 将字符串输入值转换为浮点数
- castToString($key) - 将输入值转换为字符串
- forgetIfEmpty($key) - 从输入中删除空字符串和只包含空值的数组
- map($key, $callable) - 对输入值应用任意回调
- trimWhitespace($key) - 从字符串输入值中删除空白字符