이 글은 thinkphp의 자동 검증 방법과 검증 규칙을 자세히 소개하고 있으니 thinkphp를 공부하는 친구들에게 도움이 되었으면 좋겠습니다!
ThinkPHP의 자동 검증 및 검증 규칙에 대한 자세한 설명
ThinkPHP에는 모델의 비즈니스 규칙 검증을 완료하기 위해 데이터 객체의 자동 검증 기능이 내장되어 있습니다. 자동 유효성 검사는 데이터 개체를 기반으로 하며 대부분의 경우 데이터 개체는 $_POST 형식(절대 아님)을 기반으로 생성됩니다.
기본 자동 확인 기능에는 필수 필드, 이메일 형식, 고유성, URL 주소, 숫자, 두 필드가 동일한지 여부, 특정 값과 동일한지 등이 포함됩니다.
시스템의 자동 검증 기능을 사용하려면 해당 Model 클래스에서 $_validate 속성(여러 검증 요소로 구성된 배열)만 정의하면 됩니다. 구문은 다음과 같습니다.
protected $_validate = array( array(验证字段,验证规则,错误提示[,验证条件][,附加规则][,验证时间]) };
(추천 튜토리얼: thinkphp 튜토리얼)
검증 요소 | 설명 |
---|---|
검증 필드 | 가 필요합니다. 확인해야 하는 양식 필드의 이름입니다. 이 필드는 반드시 데이터베이스 필드일 필요는 없지만 확인 코드 등과 같은 양식의 일부 보조 필드일 수도 있습니다. |
확인 규칙 | 필수입니다. 확인할 규칙은 추가 규칙과 함께 사용해야 합니다. |
오류 메시지 | 필수입니다. 인증 실패 시 프롬프트 메시지. |
확인 조건 | 선택 사항입니다. 포함:
|
추가 규칙 | 선택 사항. 다음을 포함한 확인 규칙과 함께 사용됩니다.
|
검증 시간 | 선택 사항입니다. 포함:
|
자동 확인 예시
다음 예시에서는 기사 제목을 반드시 입력해야 하는지 확인하고 제목이 이미 존재하는지 여부를 감지합니다.
class ArticleModel extends Model{ protected $_validate = array( array('title','require','标题不能为空!'), array('title','','标题已经存在!',0,'unique',1), }; }
작업 중 create 메소드를 사용하여 데이터 객체를 생성할 때 데이터 확인 작업이 수행됩니다. (POST 양식이 제출되면) 자동으로 수행됩니다. 처리):
$Article = D("Article"); if (!$Article->create()){ // 如果创建失败,表示验证没有通过(注:可能原因之一)输出错误提示信息 exit($Article->getError()); }else{ // 验证通过,继续下一步流程如将数据写入数据表 }
시스템에는 require(필수), email(이메일 형식), url(URL 주소), 통화(currency), 숫자(number), qq(QQ 번호)), 영어(영문 문자)를 직접 사용할 수 있습니다.
사용자 경험을 고려하여 $Article->getError()에서 반환되는 오류 메시지는 일반적으로 Ajax 모드에서 반환됩니다. 자세한 내용은 "ThinkPHP Ajax"를 참조하세요.
나만의 검증 규칙 정의
내장된 검증 규칙이 검증 요구 사항을 충족할 수 없는 경우, 생년월일을 2000-1 형식으로 입력해야 하는 경우 등 자체 검증 규칙을 정의할 수 있습니다. -1:
array('birthday','/^d{4}-d{1,2}-d{1,2}$/','出生年月格式错误!'),
자세한 내용 관련 튜토리얼은 PHP 중국어 웹사이트를 참고하세요!
위 내용은 ThinkPHP의 자동 검증 및 검증 규칙에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!