zoukankan      html  css  js  c++  java
  • Kohana 的 Validate 校验数组

    简介:这是Kohana 的 Validate 校验数组的详细页面,介绍了和php,有关的知识、技巧、经验,和一些php源码等。

    class='pingjiaF' frameborder='0' src='http://biancheng.dnbcw.info/pingjia.php?id=343574' scrolling='no'>

    由于校验类数组的这个类没有相关的文档,做个笔记,提防以后忘记

    class Controller_Test extends Controller_Smarty{

    public function action_index(){

    $_GET=array(

    'a'=>'aaaaa ',

    'b'=>' '

    );

    $validate = Validate::factory($_GET);

    //@todo 这里开始

    //通过标签赋值显示字段

    //参数:字段,显示名称

    $validate->label('a', 'A属性');

    $validate->label('b', 'b属性');

    //字段设置为true的时候为全部字段

    //通过回调函数验证字段合法性

    //参数:字段 ,回调函数,额外参数

    $callbacks=array(

    array($this, 'a'),

    );

    $validate->callbacks('a', $callbacks);

    $validate->callback('a', array($this, 'a1'),array('pas1','pas2')); // function a($validate,$field,$params)

    $validate->callback('b', array($this, 'b'),array('pas1')); // function a1($validate,$field,$params)

    $rule= array(

    'min_length' => array(4),

    'max_length' => array(32),

    'regex' => array('/^[-\pL\pN_.]++$/uD'),

    );

    //通过规则验证字段合法性

    //规则函数的参数通过数组列表形式传递

    //参数:字段,规则数组

    $validate->rules('a',$rule);//使用规则,规则消息在validate

    //通过规则验证

    //参数:字段,规则函数,参数

    $validate->rule(true,'not_empty',null);//过滤

    //过滤

    //参数:字段,静态方法或函数,额外参数

    $validate->filter(true, 'trim');//过滤

    //静态方法或函数: static function fa($value,$params) 指定字段值等于返回值

    $validate->filter('a', get_class($this).'::fa',array('filterparams'));

    if($validate->check()){

    print_r($validate['a']);

    print_r($validate['b']);

    }else{

    //获取错误

    //参数:消息文件名,是否翻译

    $msg=$validate->errors('a');

    print_r($msg);

    $this->end();

    }

    }

    public function a1($vaildate,$filed,$par){

    //错误添加

    //参数:字段,消息文件中的字段,传入到消息文件的一维数组

    $vaildate->error('a', 'invalid',$par);//

    }

    public function a($vaildate,$filed,$par){

    }

    public function b($vaildate,$filed,$par){

    }

    public static function fa($value,$params){

    return '000000000';

    }

    }

    在ORM中调用校验配置以下数组,最后调用check方法

    protected $_rules = array();

    protected $_callbacks = array();

    protected $_filters = array();

    protected $_labels = array();

    检测失败在属性: validate 中可以得到校验对象

    爱J2EE关注Java迈克尔杰克逊视频站JSON在线工具

    http://biancheng.dnbcw.info/php/343574.html pageNo:5
  • 相关阅读:
    spoj 3273 Treap
    hdu1074 Doing Homework
    hdu1024 Max Sum Plus Plus
    hdu1081 To the Max
    hdu1016 Prime Ring Problem
    hdu4727 The Number Off of FFF
    【判断二分图】C. Catch
    【01染色法判断二分匹配+匈牙利算法求最大匹配】HDU The Accomodation of Students
    【数轴涂色+并查集路径压缩+加速】C. String Reconstruction
    【数轴染色+并查集路径压缩+加速】数轴染色
  • 原文地址:https://www.cnblogs.com/ooooo/p/2241987.html
Copyright © 2011-2022 走看看