Filter


>i 本文档的最新修订日期是: > **2021-07-23** # Filter ## 模块简述 并对数据进行校验。 ## 模块配置 配置文件位于 `/Config/Filter.php` 。 * **`Rule`** `(Array)` `[...]` : 用以指定验证规则。 值为一个一维数组,数组的`键` 为规则的名称,`值` 为正则表达式字符串。 ## :: ByMode()方法 ### 语法 **Filter :: ByMode ( 传参数组 )** ### 说明 对来自GET/POST/COOKIE/HEADER的数据的进行校验。 此方法 `支持` 中文参数名。 ### 参数 * **`field(字段)`** `(Array)` `必须`: 指定字段和校验规则。 此参数为一个一维数组,数组的键为 `字段名` ,值为 `非空检查[,最小长度] [,最大长度] [,校验规则]` 的字符串。 其中,`字段名` 为需要检查的字段名称,`非空检查` 为检查字段对应的值是否为空(值为 `TRUE``FALSE` ),`最小长度` 为字段允许的值的最小长度,`最大长度` 为字段允许的值的最大长度( `0` 为不限制),`校验规则` 为模块配置项 `Rule` 中所定义的校验规则。 模块配置项 `Rule` 中已经预先提供了常用的中国大陆电话号码、身份证号码等格式的校验规则,详情见本模块配置文件中此配置项内的注释说明。 * **`optional(可选)`** `(Array)` `[]`: 用以指定可选(非必须)的字段。 此参数为一个一维数组,数组的键无需定义,值为 `字段名` 的字符串。 若某个字段在本参数数组元素内,则仅当该字段存在时才进行校验。 * **`mode(模式)`** `(String)` `必须`: 用以指定数据的来源。 此参数的必须是 `GET/POST/COOKIE/HEADER` 中的一个。 ### 返回 `(Bool)` 类型。 `TRUE` 代表校验通过、`FALSE` 代表校验未通过。 ## :: ByData()方法 ### 语法 **Filter :: ByData ( 传参数组 )** ### 说明 对传入数据的进行校验。 此方法 `支持` 中文参数名。 ### 参数 * **`data(数据)`** `(String)` `必须`: 用以指定需要校验的数据。 * **`check(校验)`** `(String)` `必须`: 指定校验规则。 此参数的值为 `非空检查[,最小长度] [,最大长度] [,校验规则]` 的字符串。 其中,`非空检查` 为检查字段对应的值是否为空(值为 `TRUE``FALSE` ),`最小长度` 为字段允许的值的最小长度,`最大长度` 为字段允许的值的最大长度,`校验规则` 为模块配置项 `Rule` 中所定义的校验规则。 模块配置项 `Rule` 中已经预先提供了常用的中国大陆电话号码、身份证号码等格式的校验规则,详情见本模块配置文件中此配置项内的注释说明。 ### 返回 `(Bool)` 类型。 `TRUE` 代表校验通过、`FALSE` 代表校验未通过。