Home > Article > Backend Development > Three major automatics in thinkPHP_PHP Tutorial
class UserModel extends Model{
protected $_validate=array(
//You need to write another array below. An array is a validation rule
//array('validation field','validation rule','error prompt','validation condition','additional rule','validation time'),
//Verification field: The name of the form field that needs to be verified, or some auxiliary fields in the form, such as verification code, additional code, repeated password, etc.
//Verification rules, verification rules must be used in conjunction with additional rules
//Error prompt: If an error occurs, what kind of error prompt is thrown to inform the user
//Verification conditions: 0, 1, 2 ()
//Additional rules:
// regex uses regular expressions for verification. You can write a regular expression in the verification rules yourself (first go to the Band of Brothers forum to download Teacher Gao’s regular expression video,
//Second, thinkphp has powerful functions and has blocked some regular rules for us. Third, some commonly used regular rules have been prepared online)
// function uses a function for verification. The function name time
must be written in the previous verification rule.
// callback is a callback. He will find a member method in the current UserModel
// confirm verifies whether the two fields in the form are equal.
// equal checks whether the lower value is equal to a certain value
// Whether in is within a certain range. An array
needs to be written in the verification rule.
// unique verifies whether it is unique. The system will query the database based on the current value of the field to determine whether there are the same values
//
// If you use some common regular rules built into the system, you only need to write the error message,
// require field must be verified email verification email url is the verification url address currency currency number
// Verification time: refers to the verification timing of database operation time
// 1 Verify when adding new data Model::MODEL_INSERT
// 2 Validate only when editing Model::MODEL_UPDATE
// 3 Verify Model::MODEL_BOTH
in all cases
//
array("user_name","require","User name must be filled in!"),
array("user_name","6,12","Username must be between 6 and 12 digits",0,"length"),
array("real_name","require","You need to fill in your real name!"),
array("password","require","The password must be filled in!"),
array("password","8,12","Password must be between 8 and 12 characters",0,"length"),
array("rePassword","require","Repeat password must be filled in!"),
array("password","rePassword","The passwords entered twice are inconsistent",0,"confirm"),
array("email","require","Email must be filled in"),
array("email","email","Email format error!",1),
array("verify","require","Verification code must be filled in"),
array("code","checkCode","Verification code input error",0,"callback"),
);
protected $_auto=array(
//array('Fill field', 'Fill content', 'Fill condition', 'Additional rules');
//Fill the field: This field can be a field in the form or a field in the database. It can also be some auxiliary fields
//Fill the content and use it with additional rules
//Filling conditions, 1, 2, and 3 respectively correspond to new, edited and all situations Model::MODEL_INSERT (the default parameter is to fill when new)
// Additional rules, function callback, field (fill with other fields), indicating that a value from other fields can be obtained here
// string, string to fill. This item is the default option in thinkphp auto-complete
array("password","md5",3,"function"),
array("age","deal_int",3,"callback"),
);
protected $_map=array(
"username"=>"user_name", //Different thinkPHP versions may be different, please note that they correspond to the fields in $_validate
"realname"=>"real_name", //' means to write the fields in the form at the front' =>' means to write at the back, and write the real fields in the data table at the back',
);
protected function deal_int($data){
return (int)$data;
}
protected function checkCode($data){
if(md5($_POST['code'])!=$_SESSION['verify']){
return false;
}
return true;
}
}