php tp验证表单与自动填充函数代码

复制代码 代码如下:

  <?php

  class FormModel extends Model {

  // 自动验证设置

  /*

  * 一:自动验证

  自动验证的定义是这样的:array(field,rule,message,condition,type,when,params)

  field:代表是数据库的字段名;

  rule:代表是规则;

  它的值要看type的类型而定;

  如果是condition 是function(callback),rule是一个函数名

  condition 是in,rule是一个数组

  message:代表是消息提示;

  condition:代表是验证条件

  它的值:

  self::MUST_VALIDATE 表示必须验证1

  self::VALUE_VAILIDATE 表示不为空的时候验证2

  self::EXISTS_VAILIDATE 表示表单存在的字段验证(默认)0

  type:代表验证类型

  它的值:

  function(callback) 表示验证的是调用一个Model中的函数

  confirm 表示验证两个字段是否相同

  in 是否在某个数组范围之内

  equal 验证是否等于某个值

  unique 验证某个值是否唯一

  regex 使用正则表达式(默认)

  when:代表是是否需要执行验证

  它的值:

  self::INSERT_STATUS add操作的时候验证

  self::UPDATE_STATUS update操作的时候验证

  self::ALL_STATUS (不用说了吧)

  params:参数(具体什么我现在还不太清楚)

  * */

  protected $_validate = array(

  array('title','require','标题必须!',1),//必须验证

  array('email','email','邮箱格式错误!',2),//不为空时验证

  array('content','require','内容必须'),

  array('title','','标题已经存在',0,'unique',self::MODEL_INSERT),

  );

  // 自动填充设置

  //array(填充字段,填充内容,填充条件,附加规则)

  /* 填充条件包括:

  ADD 新增数据的时候处理(默认方式) self::MODEL_INSERT add操作的时候填充

  Update 更新数据的时候处理 self::MODEL_UPDATE udate操作的时候填充

  ALL 所有情况下都进行处理 self::MODEL_BOTH (不用说了)

  附加规则包括:

  function 使用函数

  callback 回调方法

  field 用其它字段填充

  string 字符串(默认方式)

  */

  protected $_auto = array(

  array('status','1',self::MODEL_INSERT),

  array('create_time','time',self::MODEL_INSERT,'function'),

  );

  }

  ?>