So verwenden Sie die ORM-Funktion von ThinkPHP6

WBOY
Freigeben: 2023-06-20 15:12:26
Original
1806 Leute haben es durchsucht

ThinkPHP6 ist ein leistungsstarkes, einfaches und benutzerfreundliches PHP-Entwicklungsframework, das ein neues Architekturdesign und ORM-Funktionen übernimmt. Diese ORM-Funktionalität kann Ihnen helfen, Datenbanken in Ihrer Anwendung einfach zu verwalten und zu betreiben und eine schnellere Entwicklung und Änderungen durch einfachen Code zu ermöglichen. In diesem Artikel erfahren Sie, wie Sie die ORM-Funktionen von ThinkPHP6 nutzen, um Anwendungen besser zu erstellen und zu warten.

  1. Konfigurieren der Datenbankverbindung

Zuerst müssen wir die Datenbankverbindung in der Konfigurationsdatei einrichten. In der Standardkonfigurationsdatei von ThinkPHP6 wird die Datenbankkonfiguration in der Datei config/database.php gespeichert.

// config/database.php
return [
    'type'            => 'mysql',
    'hostname'        => 'localhost',
    'database'        => 'testdb',
    'username'        => 'root',
    'password'        => '',
    'hostport'        => '',
    // 其他配置参数
];
Nach dem Login kopieren

In dieser Konfigurationsdatei können wir die für die Verbindung erforderlichen Parameter einstellen. In diesem Beispiel wird die MySQL-Datenbank verwendet und notwendige Parameter wie Benutzername und Passwort festgelegt.

  1. Modellklasse erstellen

Die Modellklasse ist die Kernklasse zum Verwalten und Betreiben von Daten. Wir müssen eine neue Modellklasse erstellen, um die ORM-Funktion verwenden zu können. In ThinkPHP6 können Sie eine Modellklasse erstellen, indem Sie den folgenden Befehl ausführen:

php think make:model User
Nach dem Login kopieren

Durch Ausführen des obigen Befehls wird eine Modellklasse mit dem Namen „Benutzer“ erstellt. Sie können auch eine Modellklasse mit Vorlagen- und Validatorfunktionalität erstellen, indem Sie beim Ausführen des Befehls die Optionen „-m“ und „-r“ verwenden. Mit diesen Funktionen kann automatisch generierter Code wie Formulare und Formularvalidatoren generiert werden.

php think make:model User -m -r
Nach dem Login kopieren
  1. Definieren Sie das Modell

Als nächstes können wir die Eigenschaften und Methoden definieren, die der Datenbanktabelle in der Modellklasse entsprechen. Im folgenden Beispiel definieren wir eine Modellklasse, die der Tabelle „users“ entspricht.

// app/model/User.php
namespace appmodel;

use thinkModel;

class User extends Model
{
    // 数据表主键
    protected $pk = 'id';
    // 数据表名(不含前缀)
    protected $name = 'users';
    // 开启时间戳记录
    protected $autoWriteTimestamp = true;
    // 定义非数据库字段
    protected $field = ['full_name', 'email'];
    // 远程一对多关联
    public function jobs()
    {
        return $this->hasManyThrough('Job', 'Department');
    }
}
Nach dem Login kopieren

Im obigen Code definieren wir die Grundattribute der Modellklasse, wie Primärschlüssel, Tabellenname und Zeitstempeldatensatz usw. Wir können auch Nicht-Datenbankfelder zur Verwendung im Modell definieren. Schließlich definieren wir eine Remote-Eins-zu-Viele-Assoziationsmethode, die eine neue Remote-Eins-zu-Viele-Assoziation zwischen „Jobs“ und „Benutzern“ herstellt.

  1. Daten abfragen

Sobald wir das Modell definiert haben, können wir es zum Abfragen von Daten verwenden. Im Folgenden sind einige häufig verwendete Abfragemethoden in ThinkPHP6 aufgeführt.

  • Einen einzelnen Datensatz abfragen
$user = User::find(1);
Nach dem Login kopieren

Der obige Code fragt den Benutzerdatensatz mit der ID 1 ab.

  • Mehrere Datensätze abfragen
$users = User::select([1, 2, 3]);
Nach dem Login kopieren

Der obige Code fragt Benutzerdatensätze mit den IDs 1, 2 und 3 ab.

$users = User::where('name', 'like', 'Tom%')->order('name', 'desc')->limit(10)->select();
Nach dem Login kopieren

Der obige Code fragt Benutzerdatensätze ab, deren Namen mit „Tom“ beginnen, sortiert sie in absteigender Reihenfolge nach Namen und begrenzt die Anzahl der zurückgegebenen Datensätze auf 10.

  • Abfragestatistiken
$count = User::count();
Nach dem Login kopieren

Der obige Code gibt die Anzahl in der Tabelle „Benutzer“ zurück.

$sum = User::where('age', '>=', 18)->sum('score');
Nach dem Login kopieren

Der obige Code gibt die Gesamtpunktzahl der Benutzer zurück, deren Alter mindestens 18 Jahre beträgt.

  1. Daten aktualisieren und einfügen

Um Daten zu aktualisieren und einzufügen, können wir die Eigenschaften und Methoden der Modellinstanz verwenden.

  • Datensatz aktualisieren
$user = User::find(1);
$user->name = 'John Doe';
$user->save();
Nach dem Login kopieren

Der obige Code aktualisiert den Namen des Benutzers mit der ID 1 in „John Doe“.

  • Datensatz einfügen
$newUser = new User;
$newUser->name = 'Jane Doe';
$newUser->email = 'jane@example.com';
$newUser->save();
Nach dem Login kopieren

Der obige Code erstellt einen neuen Benutzerdatensatz.

  1. Daten löschen

Das Löschen von Datensätzen ist mithilfe von Modellklassen sehr einfach. Wir können die Methode „delete()“ des Modells aufrufen, um den Datensatz zu löschen.

$user = User::find(1);
$user->delete();
Nach dem Login kopieren

Der obige Code löscht den Benutzerdatensatz mit der ID 1.

Zusammenfassung

ORM ist eine Technologie, die die Verwaltung und den Betrieb von Datenbanken erleichtert. Die ORM-Funktionalität von ThinkPHP6 erleichtert Entwicklern diese Aufgabe. Durch das Konfigurieren von Datenbankverbindungen, das Erstellen von Modellklassen, das Abfragen von Daten, das Aktualisieren und Einfügen von Daten sowie das Löschen von Daten können wir Anwendungen schneller und bequemer entwickeln und warten.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie die ORM-Funktion von ThinkPHP6. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage