Password Strength

obtenant devint évacuée obligent
aplomb déplumé honteux fumet
plastique aimerait révélé attribué
seul rassurer moche théoriciens
écouler sperme carrefour dédier
cambodge minorités implique dégaine
asthénie potes violon chacun
enregistrées lumière indemnités malaisé
vatanen envoyer macédoine expiation
convient survenue pédagogique réchauffer
auxquels airs anathème venu
primaires barbie présenté cailler
scellé birman sapin de noël ici
fléau ressenti cornes maxillaire
jouent apportera insupportable aileron
complications brut neutron fabienne
longue-vue dernières votes débarqué
militant renseignement lignées splendeur
état mental fondamentale séjour ralliement
culture canton assiette mutuelles
académiques marcel poignée réformateur
défaillance pétrole carnaval cristaux
barbie crocodile nouer migrations
routes correct important motif
travailleur lacté danses physiquement
parution sûr comportait caresser
japper choisis déluge conserver
berlin oh minoritaire cote
économies pharmaceutiques rover brusquement
bileux toutes alcoolisme villes
circuits oblique noisette tort
forer fûts totalitarisme hivernage
lieu-dit strabique lions époques
façons soutenus coudre prédécesseurs
prémonition tact substantielles liaisons
attendus centenaire anode particuliers
barrage dépassement aérostat vaste
entrée charter morne monstre
déporter mutisme discrédit restreinte
émeutes épiscopale poêle commentaires
fainéanter législation habiller voué
immature destiner présidence mélancolie
jouissance bancaire edgar adeptes
bibliothèque excédent légendaire albumine
anarchie pelletier feront régiment
régionale boyau télex obèse
bundestag dotées rigidité obsolète
empaler distribuées fred qualifiait
priorités fondamentales compulser coins
mécénat tambouriner lourd roy
épargner disait rachetée cédé
brillant annales pareille molécule
précipitations audiovisuelle soulagement saligaud
amnistie tiendront bluffeur doser
télématique surprenant attraper pope
fournisseurs possiblement homologues aune
garage inquiétants intrus traquenard
objectif riboud hétéroclite dénonçait
luxuriant centaines hocher jonc
rampe cambodgiens terminale beige
démontré baiser tirés van
européenne avant confondre inéquitable
amant paquets suffire lancinante
cran carcasse continuateur conciliateur
traîtresse tiens  payé
ténu helsinki châtain pénal
applaudissements lycées jaunir pédagogiques
danielle archiviste reconduite banque
désordres roc boulez favorablement
lever exagéré péril jauge
morale brunissage dès presses
rustaud dégauchissage durée céleri
tube arrivait enregistrée constamment
inclus grand-père métallurgiques visées
pensées puisse librement indolence
fixé noble garde-robe jaunes
éden réputés amphibie réduction
barre montpellier supplémentaire coppola
désir inde acoustique officiers
concentration occupant tunisie vitro
granit prêtes enjôler arrêtés
consultants égocentrique donna matité
rivier captiver vantardise temps passés
laiton sollicité ceinturon humecté
malhonnête tréteau infidèle réunira
remplissent différend bouteur jargon
suggérer hostie rabaisser évacués
assurés justifie dolphy nigel
laid plumet aquilon inspectorat
envoûtement prétexte ricaner bienvenue
gus montant douche puer
franchi éducateurs aucunement crochet
infect îles vantard médiocres
tunisien courber mouloud biscuit
bouton neutron inconcevable managers
malentendu disant ne étonnant
ratiociner proposent cristaux irak
silène chaude journée formés méridien
sensibilisation neveu secret déshonorer
maisons véritablement droite lampyre

<?php

/**
 * @file generer_password_xkcd_com.php
 * @brief Ce script va générer un mot de passe tel que vu sur le site xkcd.com.
 *
 * @author hughes monget
 * @see http://monget.com/
 */

echo '<p><a href="http://xkcd.com/936/" target="_blank">Password Strength</a></p>';

$str_chemin dirname(__FILE__).DIRECTORY_SEPARATOR.'liste_francais.txt';

$arr_str_mot file($str_chemin);
$arr_str_mot array_map('trim'$arr_str_mot);
$arr_str_mot array_filter($arr_str_mot);
$arr_str_mot array_map('strtolower'$arr_str_mot);
$arr_str_mot array_unique($arr_str_mot);

echo 
'<pre>';
for (
$ii 0$ii 100$ii++)
{
    
$arr_tmp = array();
    for (
$jj 0$jj 4$jj++)
    {
        
$arr_tmp[] = $arr_str_mot[mt_rand() % count($arr_str_mot)];
    }
    echo 
implode(' '$arr_tmp).PHP_EOL;
}

echo 
'<hr />';
highlight_file(__FILE__);