Lors du processus de développement utilisant le framework thinkphp, nous rencontrons souvent des situations qui nécessitent une vérification des données. thinkphp propose de nombreuses méthodes de vérification pratiques, mais parfois, nous constatons que peu importe comment nous l'appelons, les données ne peuvent pas être automatiquement vérifiées. Pourquoi est-ce ?
Tout d'abord, nous devons comprendre comment fonctionne la vérification automatique dans thinkphp. Lorsque nous définissons une règle de validation dans le modèle, elle se présente comme suit?:
protected?$validate?=?[ ????'name'??=>?'require|max:25', ????'age'???=>?'number|between:1,120', ????'email'?=>?'email', ];
Cette définition définit un attribut de validation dans le modèle. Cet attribut est un tableau qui contient les règles qui doivent être vérifiées. Pendant l'utilisation, nous pouvons appeler la méthode $model->validate($data)
pour vérifier les données. Le paramètre $data
correspond aux données qui doivent être vérifiées. Si la vérification réussit, la méthode retournera vrai, sinon elle renverra un tableau de messages d'erreur. $model->validate($data)
方法來對數(shù)據(jù)進行驗證。$data
參數(shù)是需要進行驗證的數(shù)據(jù),如果驗證通過,方法會返回true,否則會返回一個錯誤信息的數(shù)組。
但是,在有些情況下,我們調(diào)用validate()
方法時,并沒有進行自動驗證。這是因為,thinkphp默認情況下并不會對數(shù)據(jù)進行強制的驗證。如果我們想要對數(shù)據(jù)進行驗證,需要手動調(diào)用驗證方法,如下所示:
//?強制進行自動驗證 $model->isUpdate(true)->validate($data);
在這里,我們將isUpdate
方法設(shè)置為true,表示這是一個更新操作,這樣我們就可以強制進行自動驗證了。
除了手動調(diào)用以外,我們還可以在模型中覆蓋$updateValidate
validate()
. En effet, thinkphp n'effectue pas de vérification obligatoire des données par défaut. Si nous voulons vérifier les données, nous devons appeler manuellement la méthode de vérification, comme indiqué ci-dessous?:
//?在模型中定義強制驗證 protected?$updateValidate?=?true;Ici, nous définissons la méthode
isUpdate
sur true, indiquant qu'il s'agit d'une opération de mise à jour, donc que nous pouvons désormais forcer la vérification automatique. En plus des appels manuels, nous pouvons également remplacer l'attribut $updateValidate
dans le modèle pour définir une validation forcée, comme indiqué ci-dessous?: ??rrreee??De cette fa?on, la validation des données sera automatiquement effectuée pendant le opération de mise à jour. ????En résumé, thinkphp n'effectue pas de validation forcée sur les données par défaut. Vous devez appeler ou définir manuellement l'attribut de validation forcée dans le modèle. Lorsque vous utilisez la vérification automatique, vous devez faire attention à faire la distinction entre les opérations de nouvelle et de mise à jour, car leurs règles de vérification peuvent être différentes. ??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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)