Générateur

Signaler
Messages postés
90
Date d'inscription
lundi 25 juillet 2005
Statut
Membre
Dernière intervention
18 janvier 2006
-
Messages postés
991
Date d'inscription
samedi 25 octobre 2003
Statut
Membre
Dernière intervention
29 août 2013
-
salut tous le monde
comment est ce que je peux generer tous les mots de 6 caractaire par les caractaire 'a,b,c,d,e,f,1,2,3,"
merci d'avance

5 réponses

Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
bon, ne me tapez pas s'il existe une fonction qui fait ça en une ligne, mais il y ça :



function keygen() {



$key = "";



$max_length_reg_key = 6;



$chars = array(


"a","b","c","d","e","f","g","h","i","j","k","l","m",
"n","o","p","q","r","s","t","u","v","w","x","y","z", "0", "1", "2",
"3", "4", "5", "6", "7", "8", "9");

$count = count($chars) - 1;



srand((double)microtime()*1000000);



for($i = 0; $i < $max_length_reg_key; $i++) $key .= $chars[rand(0, $count)];



return($key);



}

à+
Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
ha mince, ce n'est pas un mot généré aléatoirement que tu voulais, mais tous? dsl je lis tjrs en diagonale, ça me perdra

avec des boucles ça devrait le faire mais tu n'es pas près d'en voir la
fin, ça fait un max de possibilités ! qu'est-ce que tu veux faire? rien
d'illégal hein : p lol
Messages postés
991
Date d'inscription
samedi 25 octobre 2003
Statut
Membre
Dernière intervention
29 août 2013
7
une tite fonction recursive fera l'affaire:



$charsList = array('a', 'b', 'c', 'd', 'e', 'f', '1', '2', '3');



function gen($prof, $res) {

if ($prof == 6) echo $res;

else {

foreach ($charsList as $char) {

gen($prof+1, $res . $char);

}

}

}



et le premier appel se fait par

gen(0, "");

mais ca risque de te pomper pas mal de memoire !!!!
Messages postés
1267
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
29 juin 2010
1
Lu,

Et si tu fais comme ca :

function gen($prof=0, $res='') {
if ($prof == 6) echo $res;
else {
foreach ($charsList as $char) {
gen($prof+1, $res . $char);
}
}
}
Tu appel : gen() ^^
<hr>Si ma reponse te convient, merci de l'accepter !
Messages postés
991
Date d'inscription
samedi 25 octobre 2003
Statut
Membre
Dernière intervention
29 août 2013
7
c vrai que php est tres permissif et accepte bcp de choses, j'ai pas
l'habitude de faire des trucs comme ca, mais c bien pratique !!!

merci jojo pour l'info, je garde ca ds un coin de ma tete ;)