Erstellen Sie zunächst eine Modellklasse und erben Sie von Think \ Model Class. Hier ist ein Beispielcode für die Implementierung eines Auslösers:
Namespace App \ Modell; Verwenden Sie Think \ Model; Class UserTiggerModel erweitert das Modell { // Setzen Sie den Namen Trigger -Tabellenname geschützt $ table = 'user'; // Setzen Sie Triggerereignis Typ Protected $ events = [ 'vor_insert', 'vor_update', 'vor_delete', ]; // vor_insert Triggerereignis geschützte Funktion vorinsert ($ data) { // Betriebslogik auslösen // Zum Beispiel: Aufzeichnungsvorgänge vor dem Einfügen} // vor-update Trigger -Ereignis geschützte Funktion vor OUPDATE ($ Data) { // Operation Logic aus Trigger} // vor_delete Triggerereignis geschützter Funktion vorgefertigt ($ data) { // Operation Logic aus Trigger} }
In diesem Beispiel definieren wir drei Triggerereignisse: vor_insert , vor_update und vor_delete . Durch Überschreiben der entsprechenden Methoden in der Modellklasse können wir vorbestimmte Vorgänge automatisch ausführen, wenn die Datenbankdatensätze eingefügt, aktualisiert oder gelöscht werden.
Im tatsächlichen Geschäft müssen Sie den entsprechenden Vorgang nur über den folgenden Code auslösen:
$ user = new UserTiggerModel (); $ user-> Daten ([[ 'Name' => 'John', 'Alter' => 20, ])-> save ();
Bei der Ausführung dieses Codes wird die Vorinsert -Methode automatisch ausgelöst, wobei Sie benutzerdefinierte logische Vorgänge hinzufügen können.
Hier ist der Beispielcode zum Erstellen und Aufrufen gespeicherter Prozeduren:
Namespace App \ Modell; Verwenden Sie Think \ Model; Klasse UserProceduremodel erweitert das Modell { // Rufen Sie die gespeicherte Prozedur auf CallProcedure () auf die öffentliche Funktion () { $ sql = "call user_count ()"; $ result = $ this-> query ($ sql); Return $ Ergebnis; } }
In diesem Beispiel definieren wir eine CallProcedure -Methode, um die gespeicherte Prozedur user_count () auszuführen. Indem wir die Methode $ this-> query () aufrufen, können wir die gespeicherte Prozedur ausführen und sein Ausführungsergebnis zurückgeben.
In der Geschäftsordnung können Sie gespeicherte Prozeduren aufrufen und die Ergebnisse auf folgende Weise erhalten:
$ user = new UserProceduremodel (); $ result = $ user-> callProcedure ();
Auf diese Weise können Sie einfach gespeicherte Prozeduren aufrufen und die Ergebnisse in der $ -sergebnis -Variablen für die weitere Verarbeitung speichern.