ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
| 过滤器 | 说明 | 配置示例 | | --- | --- | --- | | `abs` | 返回绝对值 | `['field', 'int', 'filter' => 'abs'],` | | `integer` | 过滤非法字符并转换为`int`类型**支持数组** | `['userId', 'number', 'filter' => 'int'],` | | `boolean` | 转换为`bool`[关于bool值](https://github.com/inhere/php-validate#about-bool-value) | `['argee', 'bool']` | | `float` | 过滤非法字符,保留`float`格式的数据 | `['price', 'float', 'filter' => 'float'],` | | `string` | 过滤非法字符并转换为`string`类型 | `['userId', 'number', 'filter' => 'string'],` | | `trim` | 去除首尾空白字符,支持数组。 | `['username', 'min', 4, 'filter' => 'trim'],` | | `nl2br` | 转换`\n``\r\n``\r`为`<br/>` | `['content', 'string', 'filter' => 'nl2br'],` | | `lowercase` | 字符串转换为小写 | `['description', 'string', 'filter' => 'lowercase'],` | | `uppercase` | 字符串转换为大写 | `['title', 'string', 'filter' => 'uppercase'],` | | `snakeCase` | 字符串转换为蛇形风格 | `['title', 'string', 'filter' => 'snakeCase'],` | | `camelCase` | 字符串转换为驼峰风格 | `['title', 'string', 'filter' => 'camelCase'],` | | `strToTime` | 字符串日期转换时间戳 | `['pulishedAt', 'number', 'filter' => 'strToTime'],` | | `url` | URL 过滤,移除所有不符合 URL 的字符 | `['field', 'url', 'filter' => 'url'],` | | `str2array` | 字符串转数组`'tag0,tag1' -> ['tag0', 'tag1']` | `['tags', 'strList', 'filter' => 'str2array'],` | | `unique` | 去除数组中的重复值(by`array_unique()`) | `['tagIds', 'intList', 'filter' => 'unique'],` | | `email` | email 过滤,移除所有不符合 email 的字符 | `['field', 'email', 'filter' => 'email'],` | | `encoded` | 去除 URL 编码不需要的字符,与`urlencode()`函数很类似 | `['imgUrl', 'url', 'filter' => 'encoded'],` | | `clearSpace` | 清理空格 | `['title', 'string', 'filter' => 'clearSpace'],` | | `clearNewline` | 清理换行符 | `['title', 'string', 'filter' => 'clearNewline'],` | | `stripTags` | 相当于使用`strip_tags()` | `['content', 'string', 'filter' => 'clearTags'],` | | `escape` | 相当于使用`htmlspecialchars()`转义数据 | `['content', 'string', 'filter' => 'escape'],` | | `quotes` | 应用`addslashes()`转义数据 | `['content', 'string', 'filter' => 'quotes'],` | ## 注释用法 ~~~ use ESD\Plugins\Validate\Annotation\Filter; use ESD\Plugins\Validate\Annotation\Validated; //ValidationTrait class TestForm{ /** * @Filter(default="1") * @Validated(integer=true, required=true, email=true) * @var int */ public $page = 0; public $test = 0; } ~~~