Comment automatiser une action avec Laravel ?

Je souhaite créer un système avec Laravel où, lors de l'inscription d'un utilisateur, un numéro/matricule lui est automatiquement attribué selon un format spécifique, commençant par "EFGT-" suivi de six chiffres aléatoires. Je ne sais pas comment procéder pour réaliser cela.

dani03
dani03 611 XP
posted
Best answer

salut vu que tu veux commencer par "EFGT-" tu peux l'ajouter à la main et que tu veux numéro unique aléatoire tu peux utiliser la bibliothèque Str de laravel un truc comme Str::random(6) ou celle de php (random_int(100000, 999999);) si tu regarde la doc tu pourras trouver ou utliser les uuids ( Str::uuid()->toString();) toujours avec la bibliothèque Str mais les chiffres sont plus long , dans ta table user tu peux avoir une colonne "matricule" ou tu mettra la valeur $matricule = "EFGT-". Str::random(6)" et dans ton user tu l'ajoute

$randomNumber = random_int(100000, 999999);
$matricule = "EFGT-". $randomNumber;
 
User::create([
'matricule' => $matricule
]);

après pour qu'il soit unique tu peux vérifier en amont si le matricule existe en faisant user::where('matricule', $matricule)->first(); avant de créer

reelsergealain
posted

Lol ouais vraiment souvent les choses sont très simple mais cherches ça tes loin, merci beaucoup

You need Log in or Create an account to join the conversation.