>백엔드 개발 >PHP 튜토리얼 >ThinkPHP_php 예제의 세 가지 자동 소개

ThinkPHP_php 예제의 세 가지 자동 소개

WBOY
WBOY원래의
2016-05-16 20:37:171004검색

이 문서에서는 ThinkPHP의 세 가지 주요 자동 기능에 대해 자세히 설명합니다. 이는 매우 중요한 애플리케이션이며 참조용으로 모든 사람과 공유됩니다. 세부 내용은 다음과 같습니다.

1. 자동인증

형식은 다음과 같습니다.

array('验证字段','验证规则','错误提示','验证条件','附加规则','验证时间') 

매개변수 설명:

유효성 검사 필드: 양식 ​​필드 이름을 확인해야 합니다
유효성 검사 규칙: 추가 규칙과 함께 사용해야 합니다
오류 프롬프트: 오류가 발생하면 사용자에게 알리기 위해 어떤 종류의 오류 프롬프트가 표시되는지
검증조건 : 0, 1, 2
추가 규칙: 1. 정규식을 사용하여 확인 2. 함수를 사용하여 확인 3. 콜백 4. 양식의 두 필드가 동일한지 확인 확인 5. 특정 값과 같은지 확인 6. in이 범위 내에 있는지 여부 특정 범위 7. 검증 그것뿐인가
TP 캡슐화: 필수 필드를 확인해야 합니다. URL 확인 URL 주소
검증 시간: 데이터를 추가할 때 Model::MODEL_INSERT를 확인하고, 편집할 때 Model::MODEL_BOTH를 확인합니다.

aoli/Home/Tpl/default/User/reg.html 페이지는 다음과 같습니다.

<form action="__URL__/regadd" method="post">
 用户名:<input type="text" name="username" /><br />
 密码:<input type="password" name="password" /><br />
 重复密码:<input type="password" name="repassword" /><br />
 注册时间:<input type="text" name="createtime" /><br />
 注册IP:<input type="text" name="createip" /><br />
 <input type="submit" value="注册" />
</form>

aoli/Home/Lib/Model/UserModel.class.php 페이지는 다음과 같습니다.

<&#63;php
class UserModel extends Model{//对应数据库中的表user
  protected $_validate=array(
     array('username','require','用户名必填'),
     array('username','checklen','用户名长度过长或过短',0,'callback'),
     array('password','require','密码必填'),
     array('repassword','require','重复密码必填'),
     array('password','repassword','两次密码不一致',0,'confirm'),
     array('createtime','number','您输入的不是数字'),
     array('createip','email','邮箱格式不正确'),
  ); 
  function checklen($data){
    if(strlen($data)>15 || strlen($data)<5){
      return false;
    }else{
      return true;
    }
  }
     
 }
&#63;>

aoli/Home/Lib/Action/UserAction.class.php 페이지는 다음과 같습니다.

<&#63;php
 class UserAction extends Action {
 function reg(){
   $this->display();
 }
 function regadd(){
   $user=D('user');
   if($user->create()){
     if($user->add()){
       $this->success('注册成功');
     }else{
       $this->error('注册失败');
     }
   }else{
     $this->error($user->getError());
   } 
 } 
}
&#63;>
 

2. 자동완성(자동완성)

Autocomplete도 ThinkPHP의 멤버 메소드입니다. 작성 시 자동으로 실행됩니다

규칙은 다음과 같습니다.

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

간단한 예는 다음과 같습니다.

protected $_auto = array ( 
   //array( 'status','1'),  // 新增的时候把 status 字段设置为 1
   array('password','md5',1,'function') , // 对 password 字段在新增的时候使 md5 函数处理
   array('createtime','time',3,'function' ), // 对 create_time 字段在更新的时候写入当前时间戳
); 

2. 자동 매핑(필드 매핑)

자동 매핑: 데이터베이스 필드를 별칭으로 매핑하고 양식에서 별칭을 사용할 수 있습니다.

간단한 예는 다음과 같습니다.

protected $_map = array(  
  'name' => 'username',
  'pass' => 'password',
); 

이 기사에 설명된 자세한 기술은 ThinkPHP를 배우고 사용하는 모든 사람에게 도움이 될 것입니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.