Maison >développement back-end >tutoriel php >Comment insérer plusieurs lignes dans Laravel à l'aide d'Eloquent ou de Query Builder ?
Dans Laravel, vous pouvez utiliser Eloquent ou le générateur de requêtes pour insérer facilement plusieurs lignes de données dans une table de base de données à l'aide d'une seule requête.
Considérons la requête suivante :
$query = UserSubject::where('user_id', Auth::id())->select('subject_id')->get();
Cette requête récupère un tableau de résultats, tels que :
[{"user_id":8,"subject_id":9},{"user_id":8,"subject_id":2}]
Pour insérer ces résultats dans un autre tableau, vous pouvez utiliser les techniques suivantes :
$data = [ ['user_id' => 8, 'subject_id' => 9], ['user_id' => 8, 'subject_id' => 2] ]; Model::insert($data); // calls mutators including timestamps
$data = [ ['user_id' => 8, 'subject_id' => 9], ['user_id' => 8, 'subject_id' => 2] ]; DB::table('table')->insert($data); // does not call mutators
Les deux approches vous permettent d'insérer plusieurs lignes avec une seule requête. L'approche Eloquent appelle des mutateurs de modèle et des horodatages, contrairement à l'approche du générateur de requêtes.
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!