Tout d'abord, créez une classe de modèles et héritez de la classe Think \ Model . Voici un exemple de code pour implémenter un déclencheur:
Namespace App \ Model; Utiliser Think \ Model; Classe UsertriggerModel étend le modèle { // définir le nom de table de déclenchement protégé $ table = 'utilisateur'; // Définir le type d'événement Type protégé $ Events = [ 'avant_insert', 'avant_update', 'avant_delete', ]] // avant_insert Trigger Event Protected Fonction avantInsert ($ data) { // Démarrage de l'opération Logic // Par exemple: les opérations de traitement d'enregistrement avant l'insertion} // avant_update Trigger Event Protected Fonction avant update ($ data) { // déclencher la logique de l'opération} // avant_delete Trigger Event Protected Fonction BeforeDelete ($ data) { // déclencher la logique de l'opération} }
Dans cet exemple, nous définissons trois événements de déclenchement: avant_insert , avant_update et avant_Delete . En écrasant les méthodes correspondantes de la classe de modèle, nous pouvons automatiquement effectuer des opérations prédéterminées lorsque les enregistrements de la base de données sont insérés, mis à jour ou supprimés.
En activité réelle, vous n'avez qu'à déclencher l'opération correspondante via le code suivant:
$ user = new UsertriggerModel (); $ user-> data ([[ 'nom' => 'John', 'Âge' => 20, ]) -> Save ();
Lors de l'exécution de ce code, la méthode avant-insert sera automatiquement déclenchée, où vous pouvez ajouter des opérations logiques personnalisées.
Voici l'exemple de code pour créer et appeler des procédures stockées:
Namespace App \ Model; Utiliser Think \ Model; Classe UserProceDureModel étend le modèle { // appelle la fonction de procédure stockée CallProcedure () de la procédure stockée () { $ sql = "appel user_count ()"; $ result = $ this-> requête ($ sql); retour $ résultat; } }
Dans cet exemple, nous définissons une méthode CallProcedure pour exécuter la procédure stockée user_count () . En appelant la méthode $ this-> query () , nous pouvons exécuter la procédure stockée et renvoyer son résultat d'exécution.
Dans le code commercial, vous pouvez appeler les procédures stockées et obtenir les résultats de la manière suivante:
$ user = new UserProceDureModel (); $ result = $ user-> callProcedure ();
De cette façon, vous pouvez facilement appeler les procédures stockées et enregistrer les résultats dans la variable de résultat $ pour un traitement ultérieur.