Maison >développement back-end >tutoriel php >Bibliothèque d'extensions ORM en PHP8.0 : Eloquent

Bibliothèque d'extensions ORM en PHP8.0 : Eloquent

WBOY
WBOYoriginal
2023-05-14 10:22:351763parcourir

Alors que les besoins des développeurs en matière d’interaction avec les données continuent de croître, l’ORM est devenu un élément indispensable du développement moderne. Il peut masquer les opérations de base de données en arrière-plan et fournir une API simplifiée pour les opérations CRUD. Parmi ces bibliothèques ORM, Eloquent a attiré l'attention de nombreux développeurs car elle a été largement utilisée dans le framework Laravel. Dans PHP 8.0, Eloquent se présente sous la forme d'une bibliothèque d'extensions autonome et peut désormais être utilisée dans vos projets.

Dans cet article, nous explorerons certaines des fonctionnalités clés d'Eloquent et vous présenterons comment intégrer cette bibliothèque d'extensions dans votre projet PHP.

Installer Eloquent

Avant d'installer Eloquent, vous devez installer PHP8.0 ou supérieur pour garantir la compatibilité. Vous pouvez utiliser [composer](https://getcomposer.org/) pour installer Eloquent, exécutez simplement la commande suivante dans le terminal :

composer require illuminate/database

Modèle Eloquent

La base pour interroger et modifier la base de données dans Eloquent est le modèle ( Modèle). Les modèles constituent le concept central d'ORM et sont généralement mappés aux tables de base de données. Les modèles éloquents constituent un moyen très pratique d'effectuer des opérations standard telles que la création, la mise à jour et la suppression.

Dans Eloquent, la classe Model possède des propriétés et des méthodes définissables pour interagir avec les tables de la base de données. Regardons un exemple simple :

use IlluminateDatabaseEloquentModel;

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

Cet exemple définit un modèle utilisateur qui contient l'attribut de remplissage $fillable. Cela indique à Eloquent quelles propriétés peuvent être définies lors de l'allocation par lots. Dans ce cas, seules les propriétés répertoriées dans l'attribut $fillable peuvent être définies via l'affectation de tableau. $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();

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

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

创建新记录

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

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

查询记录

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

$users = User::all();

$user = User::find(1);

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

更新记录

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

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

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

Connexion à la base de données

Vous pouvez configurer une connexion à la base de données des manières suivantes :

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

Avec la méthode addConnection, Eloquent établira une connexion à la base de données dans l'application. Vous pouvez ajouter plusieurs connexions à chaque canal et utiliser différentes connexions dans différents scénarios.

La méthode setAsGlobal fera de la connexion à la base de données instanciée par cette connexion une connexion globale, et cette connexion sera utilisée en premier dans les opérations ultérieures.

Créer de nouveaux enregistrements 🎜🎜 Vous pouvez utiliser Eloquent pour créer de nouveaux enregistrements de données, tels que : 🎜
$user = User::find(1);
$user->delete();
🎜 Interroger des enregistrements 🎜🎜 Vous pouvez interroger des données via Eloquent, telles que : 🎜rrreee 🎜 Mettre à jour les enregistrements 🎜🎜 Vous pouvez utiliser Eloquent pour mettre à jour enregistrements existants, tels que : 🎜rrreee🎜Lors de la modification des enregistrements, la méthode save doit être utilisée. Si vous souhaitez uniquement mettre à jour certains champs spécifiques, vous pouvez utiliser la méthode update : 🎜rrreee🎜Supprimer les enregistrements🎜🎜Vous pouvez utiliser Eloquent pour supprimer des enregistrements existants, par exemple : 🎜rrreee🎜Conclusion🎜🎜Eloquent est une bibliothèque ORM puissante et célèbre dans le cadre du framework Laravel. Cependant, il peut bénéficier à encore plus d'applications PHP via une bibliothèque d'extensions distincte. Avec cet aperçu de cet article, vous devriez maintenant avoir une meilleure compréhension d'Eloquent et pouvoir commencer à l'utiliser dans vos propres applications PHP 8.0. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn