Filter

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