Modelldefinition
1. Definieren Sie das Modell
1. Definieren Sie ein Modell, das mit der Datenbank übereinstimmt
class User extends Model{ }
2. Die Benennungsregel der Modellklasse wird automatisch entfernt Verwenden Sie für das Tabellenpräfix (z. B. tp_) eine Kamel-Groß-/Kleinschreibung mit Großbuchstaben, z. B.:
tp_user (Tabellenname) => Benutzer (Modellname)
tp_user_type ( Tabellenname) => ; UserType (Modellname)
3 Wenn Sie über den Konflikt zwischen dem Modellnamen und den PHP-Schlüsselwörtern besorgt sind, können Sie die Klassensuffixfunktion aktivieren und sie einfach in der Anwendungskonfigurationsdatei festlegen app.php:
// 开启应用类库后缀 'class_suffix' => true,
4. Nach der Einrichtung müssen alle Controllernamen und Klassennamen mit Controller und Model hinzugefügt werden, zum Beispiel:
Class UserModel
Class UserController
2 . Modelleinstellungen
1. Der Standard-Primärschlüssel ist id. Wenn Sie andere Primärschlüssel festlegen möchten, ist dies ähnlich wie bei uid:
protected $pk = 'uid';
2 , wenn der Controller-Klassenname den Modellnamen dupliziert, können Sie einen Alias festlegen:
verwenden Sie apptestmodelUser als UserModel;
3. In der Modelldefinition können Sie auch eine andere Tabelle festlegen Namen im Modell:
protected $table = 'tp_other';
4. Das Modell unterstützt auch die Initialisierung wie der Controller. Die statische statische Methode muss hier wie folgt eingestellt werden:
protected static function init() { //初始化内容 }
3. Modellbetrieb
1. Modelloperationen stimmen mit Datenbankoperationen überein, Modelloperationen erfordern jedoch keine Angabe von Tabellennamen, zum Beispiel:
Datenbankoperationen:
Db::name('user')->all ();
Modelloperationen:
User:all();
2 Operationen und Datenbanken Die von der Operation zurückgegebenen Ergebnistypen sind unterschiedlich. Das von der Datenbankoperation zurückgegebene Ergebnis ist ein (zweidimensionales) Array [ [ ] ], während das von der Modelloperation zurückgegebene Ergebnis eine Ergebnismenge [ { } ] ist.
Empfohlenes Tutorial: „TP5“
Das obige ist der detaillierte Inhalt vonthinkphp-Modelldefinition. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!