Laravel est un très excellent framework PHP qui offre aux développeurs de nombreuses commodités, telles que la simplification du codage, l'amélioration de l'efficacité du développement et une maintenance facile. Dans le même temps, Laravel prend également en charge diverses méthodes d'exploitation de bases de données, ce qui permet aux développeurs d'effectuer plus facilement des opérations de bases de données. Dans cet article, nous présenterons comment effectuer des opérations de base de données dans le framework Laravel.
Première étape : définir les informations de la base de données
Tout d'abord, nous devons configurer les informations de la base de données dans le projet Laravel. Il peut être configuré dans le fichier config/database.php, qui comprend des informations telles que le type de base de données, l'adresse de l'hôte, le port, le nom de la base de données, le nom d'utilisateur et le mot de passe.
Dans Laravel, plusieurs bases de données peuvent être prises en charge. Par conséquent, la configuration doit être effectuée dans config/database.php, par exemple :
'connections' => [ 'mysql' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), 'unix_socket' => env('DB_SOCKET', ''), 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => '', 'strict' => true, 'engine' => null, ], 'mysql2' => [ 'driver' => 'mysql', 'host' => env('DB2_HOST', '127.0.0.1'), 'port' => env('DB2_PORT', '3306'), 'database' => env('DB2_DATABASE', 'forge'), 'username' => env('DB2_USERNAME', 'forge'), 'password' => env('DB2_PASSWORD', ''), 'unix_socket' => env('DB2_SOCKET', ''), 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => '', 'strict' => true, 'engine' => null, ],
Vous pouvez voir que deux connexions à la base de données sont définies ici : mysql et mysql2, qui correspondent à des bases de données différentes.
La configuration pertinente de chaque base de données peut être spécifiée dans le fichier .env :
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=database_name DB_USERNAME=database_username DB_PASSWORD=database_password DB_CONNECTION=mysql2 DB_HOST=127.0.0.1 DB_PORT=3306 DB2_DATABASE=database2_name DB2_USERNAME=database2_username DB2_PASSWORD=database2_password
Ces informations de configuration seront utilisées dans l'application Laravel.
Étape 2 : Construire le modèle
Dans le framework Laravel, les modèles peuvent être utilisés pour interagir avec la base de données. Un modèle est une classe utilisée pour traiter les données dans une base de données. L'utilisation de modèles peut mapper les tables de la base de données à une classe PHP, nous permettant ainsi d'exploiter la base de données plus facilement.
Utilisez les outils de ligne de commande Artisan pour générer rapidement des modèles, par exemple :
php artisan make:model User
Cela générera une classe de modèle nommée User dans le répertoire app/Models, où vous pourrez définir des tables, des clés primaires, des horodatages et d'autres informations.
namespace App\Models; use Illuminate\Database\Eloquent\Model; class User extends Model { protected $table = 'user'; protected $primaryKey = 'id'; public $timestamps = true; }
Étape 3 : Requête de données
Dans Laravel, la requête de base de données peut être facilement effectuée via Eloquent ORM. Les modèles facilitent l'interrogation d'une table. Par exemple, vous pouvez obtenir tous les enregistrements de la table « Utilisateur » en utilisant la méthode Eloquent suivante :
use App\Models\User; $users = User::all();
Lorsque vous utilisez la méthode findOrFail pour rechercher des enregistrements, vous pouvez utiliser cette méthode avec l'ID de modèle :
$user = User::findOrFail(1);
Lors de l'interrogation de certains enregistrements , vous pouvez utiliser la méthode Where :
use App\Models\User; $users = User::where('name', 'John')->get();
Vous pouvez également utiliser d'autres conditions pour l'interrogation, telles que :
$user = User::where('name', 'John')->first();
$users = User::select('name')->distinct()->get();
$users = User::orderBy('name', 'desc')->take(10)->get();
Étape 4 : Insérer des données
L'insertion de données dans le framework Laravel est très simple. Lorsque vous utilisez un modèle pour créer un nouvel enregistrement, vous pouvez utiliser le code suivant :
$user = new User; $user->name = 'John'; $user->email = 'john@example.com'; $user->save();
Vous pouvez également utiliser la méthode create dans une classe pour créer plusieurs nouveaux enregistrements à la fois :
User::create([ 'name' => 'Jane', 'email' => 'jane@example.com', ]);
Étape 5 : Mettre à jour les données
Mise à jour des données à travers un modèle est également très simple. Vous pouvez mettre à jour un enregistrement via le code suivant :
$user = User::find(1); $user->email = 'john.doe@example.com'; $user->save();
Vous pouvez également mettre à jour les enregistrements par lots :
User::where('name', 'John')->update(['email' => 'john.doe@example.com']);
Étape 6 : Supprimer des données
La suppression de données est similaire à la mise à jour de données. Si vous souhaitez supprimer un seul enregistrement, veuillez utiliser la commande suivante :
$user = User::find(1); $user->delete();
Lorsque vous devez supprimer plusieurs enregistrements, vous pouvez utiliser la commande suivante :
User::where('name', 'John')->delete();
Notez que la méthode de suppression supprimera définitivement l'enregistrement de la base de données. Au lieu de le supprimer définitivement, vous pouvez utiliser la fonction de suppression logicielle pour le déplacer vers une autre table.
Résumé
Laravel ORM fournit aux programmeurs un outil puissant pour exploiter des bases de données. Grâce aux étapes ci-dessus, vous pouvez facilement effectuer des requêtes, des insertions, des mises à jour et des suppressions de base de données. Il convient de noter que les données sensibles doivent être traitées avec beaucoup de soin et avec un bon comportement. J'espère que cet article vous sera utile lors de l'exploitation de bases de données dans Laravel.
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!