Maison  >  Article  >  cadre php  >  Comment supprimer et modifier des données dans Laravel

Comment supprimer et modifier des données dans Laravel

PHPz
PHPzoriginal
2023-03-31 13:52:231223parcourir

Laravel est un très excellent framework PHP. Il est apprécié par de nombreux développeurs en raison de ses fonctions riches et de ses opérations pratiques, notamment la suppression et la modification de données, qui sont également des fonctions couramment utilisées. Présentons brièvement comment supprimer et modifier des données dans Laravel.

1. Suppression de données

1.1 Suppression d'une seule donnée

Dans Laravel, pour supprimer une seule donnée, vous devez d'abord obtenir l'objet de données à supprimer via Eloquent, puis appeler sa méthode delete() . Par exemple :

$user = User::find(1);
$user->delete();

Le code ci-dessus supprimera l'enregistrement utilisateur avec l'ID 1. Il est à noter que si les données à supprimer n'existent pas, aucune exception ne sera levée, mais sera renvoyée directement.

1.2 Suppression par lots de données

Parfois, il est nécessaire de supprimer beaucoup de données en même temps Afin d'éviter les problèmes de performances causés par les appels circulaires à delete(), Laravel fournit une combinaison de méthodes où et de suppression pour y parvenir. suppression par lots. Par exemple :

User::where('age', '<&#39;, 18)->delete();

Le code ci-dessus supprimera tous les enregistrements d'utilisateurs de moins de 18 ans.

1.3 Suppression logicielle

Dans les applications pratiques, la suppression de données n'est pas nécessairement une suppression physique, elle peut aussi être une suppression logique. Laravel fournit une fonctionnalité de suppression logicielle qui marque les données comme supprimées lorsqu'elles sont supprimées au lieu de les supprimer directement de la base de données. Vous devez d'abord définir un attribut $dates dans le modèle de données :

protected $dates = ['deleted_at'];

Ensuite, utilisez la suppression logicielle. Implémentez simplement l'interface SoftDeletes dans le modèle et appelez la méthode delete() :

use Illuminate\Database\Eloquent\SoftDeletes;

class User extends Model
{
    use SoftDeletes;

    protected $dates = ['deleted_at'];
}

$user = User::find(1);
$user->delete();

Le code ci-dessus enregistrera l'utilisateur avec l'ID. 1 Le champ delete_at est défini sur l'heure actuelle au lieu d'être supprimé directement de la base de données. Vous pouvez utiliser la méthode withTrashed() pour interroger les données supprimées de manière logicielle, ou vous pouvez utiliser la méthode forceDelete() pour supprimer définitivement les données supprimées de manière logicielle.

2. Modification des données

2.1 Modifier une seule donnée

Dans Laravel, la modification d'une seule donnée est très similaire à l'ajout de nouvelles données. Vous devez d'abord obtenir l'objet de données à modifier via Eloquent, puis modifier ses valeurs d'attribut et enfin appeler la méthode save(). Par exemple :

$user = User::find(1);
$user->name = '小明';
$user->age = 20;
$user->save();

Le code ci-dessus définira le champ de nom de l'enregistrement utilisateur avec l'ID 1 sur "Xiao Ming" et le champ d'âge sur 20.

2.2 Modifier les données par lots

Laravel fournit la méthode de mise à jour pour modifier les valeurs d'attribut spécifiées​​de plusieurs éléments de données en même temps. Par exemple :

User::where('age', '<&#39;, 18)->update(['age' => 20]);

Le code ci-dessus définira le champ d'âge de tous les enregistrements d'utilisateurs de moins de 18 ans sur 20.

  1. Résumé

La suppression et la modification de données sont l'une des opérations les plus élémentaires du développement de Laravel. Ce qui précède présente brièvement les fonctions et l'utilisation liées aux opérations de suppression et de modification dans Laravel. Ces opérations sont développées sur la base d'Eloquent ORM, ce qui est très pratique et pratique.

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