Maison >développement back-end >tutoriel php >À propos de la méthode d'implémentation du validateur personnalisé dans le framework thinkPHP5
Cet article présente principalement la méthode d'implémentation du validateur personnalisé du framework thinkPHP5 et analyse la définition et l'utilisation spécifiques du validateur personnalisé thinkPHP sous forme d'exemples. Les amis dans le besoin peuvent se référer à ce qui suit
Les exemples dans. Cet article est expliqué. Développement de la méthode d'implémentation du validateur personnalisé du framework thinkPHP5. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
Le manuel du validateur ordinaire est très détaillé, expliquons comment personnaliser un validateur
Nous créons d'abord le fichier validata dans le module directory Folder
puis créez une classe à l'intérieur, nommée IdMustInt.php
Le code est le suivant : Notez que mon module s'appelle api, donc l'espace de noms est le suivant
Protéger les attributs $rule est une règle officielle et ne peut pas être modifiée. En fait, les règles de vérification requises sont des noms de fonction encapsulés, nous créons donc également une méthode, et le nom de la méthode est renseigné après la règle de vérification
.
namespace app\api\validate; use think\Validate; class IdMustInt extends Validate { protected $rule = [ 'id' => 'require|IsInt' ]; protected function IsInt($value,$rule,$data,$field){ //参数依次为验证数据,验证规则,全部数据(数组),字段名 //这里我们要判断的验证的数据要求必须为正整型 if(is_numeric($value) && is_int($value+0) && ($value+0) > 0){ return true; }else{ //如果不符合我们的条件,返回错误信息,在控制器中可以用getError()方法输出 return $field.'不是整型'; } } }
Regardons les opérations correspondantes de notre contrôleur
public function getBanner($id) { //需要验证的数据 $data = [ 'id' => $id, ]; //实例化验证器 $validate = new IdMustInt(); //如果验证数据较多,条件也较多,需要批量返回所有错误信息的话,可以在check()前加上$validata->batch() $result = $validate->check($data); if($result){ //业务逻辑 }else{ dump($validate->getError()); } }
Ce qui précède représente l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'apprentissage de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !
Recommandations associées :
À propos de la méthode de thinkphp pour implémenter la fonction d'historique de navigation
À propos de l'analyse du contrôleur de ThinkPHP
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!