> php教程 > PHP源码 > ThinkPHP 使用 callback 自动验证字段唯一

ThinkPHP 使用 callback 自动验证字段唯一

PHP中文网
풀어 주다: 2016-05-25 16:59:12
원래의
1401명이 탐색했습니다.

跳至

public $_validate = array(
        array('name', 'chkUniName', '英文代码已经存在.', self::EXISTS_VALIDATE, 'callback'),
 放在 CommonModel 中.
 //检查唯一
    public function chkUni($field){
        if(empty($field)){
            return false;
        }
        $map = array();
        $pk = $this->getPk();
        //如果有主键传入, 说明是编辑, 加入排除自己的条件.
        if(!empty($_REQUEST[$pk])){
           $map[$pk] = array('neq', intval($_REQUEST[$pk]));
        }
        $map[$field] = array('eq', trim($_REQUEST[$field]));
        if(null === $this->where($map)->find()){
            return true;
        }else{
            return false;
        }
    }
    //检查 name 是否存在
    protected function chkUniName(){
        return $this->chkUni('name');
    }
로그인 후 복사

                   

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿