Bonjour,
Je souhaiterais réaliser un tirage au sort parmi plusieurs éléments, puis vérifier que certaines conditions sont bien remplies pour valider le résultat et, si ce n'est pas le cas, effectuer un nouveau tirage (etc.).
Le but est de répartir aléatoirement un élément par jour sur un planning.
J'ai une liste de nombres (correspondant à des id dans une table) que je récupère sous la forme d'un tableau. J'effectue un array_rand pour sélectionner un id au hasard. Dans certaines circonstances (jour de la semaine pour un id déterminé, ou si l'id a déjà été tiré au sort sur le jour précédent) je souhaiterais effectuer un nouveau tirage au sort, et vérifier à nouveau si les conditions sont respectées, etc. Ce n'est qu'une fois qu'un id remplira toutes les conditions que la boucle s'arrête (avec une requête SQL pour l'insérer dans la BDD). C'est cette partie qui me pose problème : je ne vois pas quelle boucle utiliser pour le résoudre...
Merci pour votre aide.