Heim > Backend-Entwicklung > PHP-Tutorial > ORM-Erweiterungsbibliothek in PHP8.0: Eloquent

ORM-Erweiterungsbibliothek in PHP8.0: Eloquent

WBOY
Freigeben: 2023-05-14 12:10:02
Original
1746 Leute haben es durchsucht

Da der Bedarf von Entwicklern an Dateninteraktion weiter wächst, ist ORM zu einem unverzichtbaren Bestandteil der modernen Entwicklung geworden. Es kann Datenbankvorgänge im Hintergrund verbergen und eine vereinfachte API für CRUD-Vorgänge bereitstellen. Unter diesen ORM-Bibliotheken hat Eloquent die Aufmerksamkeit vieler Entwickler auf sich gezogen, da sie im Laravel-Framework weit verbreitet ist. In PHP 8.0 ist Eloquent eine eigenständige Erweiterungsbibliothek und kann jetzt in Ihren Projekten verwendet werden.

In diesem Artikel werden wir einige der wichtigsten Funktionen von Eloquent untersuchen und vorstellen, wie Sie diese Erweiterungsbibliothek in Ihr PHP-Projekt integrieren.

Eloquent installieren

Bevor Sie Eloquent installieren, müssen Sie PHP8.0 oder höher installieren, um die Kompatibilität sicherzustellen. Sie können [composer](https://getcomposer.org/) verwenden, um Eloquent zu installieren. Führen Sie einfach den folgenden Befehl im Terminal aus:

composer require illuminate/database
Nach dem Login kopieren

Eloquent-Modell

Die Grundlage für die Abfrage und Änderung der Datenbank in Eloquent ist das Modell ( Modell). Modelle sind das Kernkonzept von ORM und werden normalerweise auf Datenbanktabellen abgebildet. Eloquente Modelle bieten eine sehr praktische Möglichkeit, Standardvorgänge wie Erstellen, Aktualisieren und Löschen auszuführen.

In Eloquent verfügt die Model-Klasse über definierbare Eigenschaften und Methoden für die Interaktion mit Datenbanktabellen. Schauen wir uns ein einfaches Beispiel an:

use IlluminateDatabaseEloquentModel;

class User extends Model
{
    protected $fillable = ['name', 'email', 'password'];
}
Nach dem Login kopieren

Dieses Beispiel definiert ein Benutzermodell, das das Füllattribut $fillable enthält. Dadurch wird Eloquent mitgeteilt, welche Eigenschaften während der Stapelzuweisung festgelegt werden können. In diesem Fall können nur die im Attribut $fillable aufgeführten Eigenschaften per Array-Zuweisung festgelegt werden. $fillable。 这告诉Eloquent哪些属性可以在批量分配时设置。在这种情况下,只有 $fillable 属性中列出的属性可以通过数组赋值进行设置。

数据库连接

可以通过以下方式来配置数据库连接:

use IlluminateDatabaseCapsuleManager as DB;

$db = new DB;

$db->addConnection([
    'driver'    => 'mysql',
    'host'      => 'localhost',
    'database'  => 'database',
    'username'  => 'username',
    'password'  => 'password',
    'charset'   => 'utf8',
    'collation' => 'utf8_unicode_ci',
    'prefix'    => '',
]);

$db->setAsGlobal();
Nach dem Login kopieren

通过addConnection方法,Eloquent会在应用程序中建立一个数据库连接。您可以为每个频道添加多个连接,在不同的场景下使用不同的连接。

setAsGlobal方法会使这个连接实例化的数据库连接成为全局连接,在后续的操作中将会优先通过这个连接进行。

创建新记录

可以使用Eloquent创建新的数据记录,例如:

$user = new User;
$user->name = 'John Doe';
$user->email = 'john.doe@example.com';
$user->password = 'secret';
$user->save();
Nach dem Login kopieren

查询记录

可以通过Eloquent查询数据,例如:

$users = User::all();

$user = User::find(1);

$users = User::where('active', true)
             ->orderBy('name', 'desc')
             ->take(10)
             ->get();
Nach dem Login kopieren

更新记录

可以使用Eloquent更新现有记录,例如:

$user = User::find(1);
$user->name = 'New Name';
$user->save();
Nach dem Login kopieren

在更改记录时,应该使用 save 方法。如果只想更新某些特定字段,可以使用 update

Datenbankverbindung

Sie können eine Datenbankverbindung auf folgende Arten konfigurieren:

User::where('id', 1)
    ->update(['name' => 'New Name']);
Nach dem Login kopieren

Mit der Methode addConnection stellt Eloquent eine Datenbankverbindung in der Anwendung her. Sie können jedem Kanal mehrere Verbindungen hinzufügen und in verschiedenen Szenarien unterschiedliche Verbindungen verwenden.

Die Methode setAsGlobal macht die durch diese Verbindung instanziierte Datenbankverbindung zu einer globalen Verbindung, und diese Verbindung wird in nachfolgenden Vorgängen zuerst verwendet.

Neue Datensätze erstellen 🎜🎜 Mit Eloquent können Sie neue Datensätze erstellen, z. B.: 🎜
$user = User::find(1);
$user->delete();
Nach dem Login kopieren
🎜 Datensätze abfragen 🎜🎜 Sie können Daten über Eloquent abfragen, z. B.: 🎜rrreee 🎜 Datensätze aktualisieren 🎜🎜 Sie können Eloquent zum Aktualisieren verwenden vorhandene Datensätze, wie zum Beispiel: 🎜rrreee🎜Beim Ändern von Datensätzen sollte die Methode save verwendet werden. Wenn Sie nur bestimmte Felder aktualisieren möchten, können Sie die Methode update verwenden: 🎜rrreee🎜Datensätze löschen🎜🎜Sie können Eloquent verwenden, um vorhandene Datensätze zu löschen, zum Beispiel: 🎜rrreee🎜Fazit🎜🎜Eloquent ist eine leistungsstarke ORM-Bibliothek und als Teil des Laravel-Frameworks bekannt. Durch eine separate Erweiterungsbibliothek können jedoch noch mehr PHP-Anwendungen davon profitieren. Mit diesem Überblick über diesen Artikel sollten Sie nun ein besseres Verständnis von Eloquent haben und mit der Verwendung in Ihren eigenen PHP 8.0-Anwendungen beginnen können. 🎜

Das obige ist der detaillierte Inhalt vonORM-Erweiterungsbibliothek in PHP8.0: Eloquent. 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