数字化技能提升教程,数字化时代生存宝典

数字化百科 / 词条 / SpeedPHP/spVerifier数据验证类

SpeedPHP/spVerifier数据验证类

查看全部词条命名空间:Main

SpeedPHP | 快速入门 | 访问交互 | 数据操作 | 框架概述 | 模板引擎 | 优化加速 | 开发指南 | 数据模型 | API参考

数据验证类,提供spModel的继承类验证数据格式的匹配性,能够让开发者自定义验证规则以及返回的提示结果。

成员变量

private

  • $add_rules -- 附加的检验规则函数
  • $verifier -- 验证规则
  • $messages -- 验证时返回的提示信息
  • $checkvalues -- 待验证字段

成员函数

public

  • __input -- 函数式使用模型辅助类的输入函数
  • addrules -- 加入附加的验证规则
  • cn_strlen -- 计算字符串长度,支持包括汉字在内的字符串

private

  • checkrules -- 按规则验证数据
  • notnull -- 内置验证器,检查字符串非空
  • minlength -- 内置验证器,检查字符串是否小于指定长度
  • maxlength -- 内置验证器,检查字符串是否大于指定长度
  • equalto -- 内置验证器,检查字符串是否等于另一个验证字段的值
  • istime -- 内置验证器,检查字符串是否正确的时间格式
  • email -- 内置验证器,检查字符串是否正确的电子邮件格式

位置:spVerifier类位于 SP_PATH/Core/spModel.php

详细

__input

函数式使用模型辅助类的输入函数。

object __input( & spModel object, array array)

__input() 是spModel的模型辅助类在使用函数式方法时的标准输入接口。

本成员函数将在spModel辅助类以及spController辅助类中是经常使用到的。

addrules

加入附加的验证规则

void addrules(string rule_name, mixed checker)

验证规则一般是直接在spModel继承类的成员变量$addrules中设置,使用addrules()可以在程序执行期间动态给数据增加验证规则。

rule_name是验证规则的名称,checker是设置的验证器,和spModel继承类的成员变量$addrules中的设置一样,checker可以是用作验证的函数名称,同时还可以是array('类名', '方法函数名')形式的类方法调用。

例子:

// 将一个名为“checkname”的验证规则增加到验证程序中,其验证器是UserDataModel类的theCheckNameFunction成员函数。

spClass("UserDataModel")->spVerifier()->addrules("checkname", array("UserDataModel","theCheckNameFunction"));

cn_strlen

计算字符串长度,支持包括汉字在内的字符串

int cn_strlen(string val)

cn_strlen()可以检查包括汉字在内的字符串长度,返回的长度数据中,汉字和英文都同时被计算成相等长度。即一个汉字长度等于一个字母长度。

checkrules

按规则验证数据

mixed checkrules(array values)

checkrules()是spVerifier的核心操作函数,将执行对输入数组values的规则验证。

notnull

内置验证器,检查字符串非空

bool notnull(string val, mixed right)

minlength

内置验证器,检查字符串是否大于指定长度

bool minlength(string val, mixed right)

maxlength

内置验证器,检查字符串是否大于指定长度

bool maxlength(string val, mixed right)

equalto

内置验证器,检查字符串是否等于另一个验证字段的值

bool equalto(string val, mixed right)

istime

内置验证器,检查字符串是否正确的时间格式

bool istime(string val, mixed right)

email

内置验证器,检查字符串是否正确的电子邮件格式

bool email(string val, mixed right)

参考来源

http://speedphp.com/manual.html

SpeedPHP使用手册导航

快速入门

开始使用SpeedPHP | 制作留言本 | 简便的数据表操作 | 用Smarty来显示页面

访问交互

入口文件 | 控制器架构 | 网址生成与PATH_INFO | 获取提交数据 | URLRewrite伪静态 | 自定义伪静态URL | 几种跳转 | 多语言实现 | 权限控制 | session、cookie | Ajax应用

数据操作

编写数据模型类 | 常规操作CRUD | 安全过滤 | 简化操作spDB | 数据变量存储 | 缓存配置

框架概述

单入口应用程序 | 架构设计 | 第三方类库及扩展功能 | UTF8编码与GBK版本 | SAE云计算版

模板引擎

模板引擎配置 | 使用Smarty | Smarty开发教程 | 自动显示模板| speedy教程 | 为什么使用模板其常见问题 | 模板包含文件 | 注册函数 | 全局变量赋值 | CSS和JS的路径

优化加速

生成静态HTML概述 | 生成HTML的使用 | 分页 | 高效函数缓存器| 模板引擎缓存

开发指南

核心函数 | 格式输出变量调试dump | 载入包含文件import | 类实例化函数spClass | 开发流程 | 目录结构、路径设置 | 大规模系统部署 | 用户自定义及全局操作 | 自定义函数库 | 自定义类库 | 自定义404页面 | 程序调试dump变量调试安全建议及命名建议

数据模型

高级数据库操作 | 数据表一对一关联 | 数据表一对多关联 | 数据表多对多关联 | 一表关联多表 | 关联结果的条件限制 | 关联结果在Smarty模板中显示 | 多数据库、数据表 | 多种类型数据库的配置 | 重写CRUD操作| 业务数据封装 | 数据函数复合调用

API参考

spModel数据库操作类 | spPager分页类 | spVerifier数据验证类 | spCache函数数据缓存类 | spLinker数据表关联实现类 | spView视图类 | spHtml静态HTML生成类 | spController控制器类 | spArgs环境参数类 | 配置 | 数据库驱动类 | 模板驱动类 | import载入文件