Password Strength

chers apercevoir classes émet
gratte-papier vraisemblance roulement cardiaque
fournitures dirigés ouragan délivrer
hautes précéder serviette suffrage
il douze défendu arranger
bouddhiste cellulaire danseur linge
libertin consultant ombre violentes
contraste astre service externes
libanais toronto ayant insouciance
ailette essentiels sylvie métaphoriquement
incrédule juliette dureté acquéreurs
noué bronx gilbert duras
tibet architectonique brusque permettre
spontanéité journées lilas lucide
nounours cirque limousine confier
piloter distinguer de exceptionnellement lecteur
infirmité fronde raison pacage
voulu tranchet gaspiller explique
victime chauler signe bousculade
fripon ondes retentir bureaucratiques
hante dévot déclamer endroit
risquer technicien agripper irréligion
étayer hôtel déserte départementales
différencier gréviste sain testament
communiquer réélu pneus rocard
obtus accrue pluriel dégauchir
défaite sagesse participeront re
évacuation confins fillioud australien
suie harold fouir ambitieuses
phaéton lions erevan anesthésiant
tapisserie cadeau avantage interstice
mécanismes célèbres métallurgie décombres
épidémique sensiblement jovial herboriste
chaude émaner masculin lice
flou mastic nucléaires épouse
courroux fada hippopotame marginalisation
gueux réfréner présenterait prélude
abrasive oisif fustiger planté
immortel ambition rembourser pare
modeler ordinateurs majorer reviendra
satisfaite pétain injurier fendiller
suisses autorisations beau-père traque
fornicateur redouter livres joseph
sollicite adressées foulard inaltérable
paroxysme né diffusées cuisinière
perfectif achromatisme ouvrant oc
obtenant affaiblissement multicolores notamment
heureuse brise râpé edgar
renforcés bronzer pêche métaux
pensionné boulots bulgare fit
dow appellent bouleversement ravel
contraints abolition concitoyens continu
déjà fahd baptisé raffiné
miroir divan crabe polycopier
rétrospective formulaire deuxième juristes
sarre néerlandaise accumulé krach
douze blair surveillant devine
composante délier bloch conjurer
subitement reconnaissait accroissement exploit
fatigué souple partielle taille
rudesse clerc stockage ulcère
crânerie loyauté maturité park
 parc potiner réacteur
corrélationnel touché increvable juive
phrases marks botaniste devoir
breuvages résulter système jérusalem
démence chirurgie lors hors
shampoing disposent justes frais
écoute approuvent procure mentionner
priés framboisier marxiste coq
slovènes polonaises passages seller
jouissance engagés algériens prérogative
pistes bavard timidement devez
épithélium corrèze contenus atteinte
stephan ordinaires voltaire aura
épatement tunisien tranquilliser ravisseur
chartres mettait régurgiter nouer
individualiste arraché argument johnny
prospective temps passés caricaturiste reconquérir
comté souvenirs paysan envol
autocritique diesel  poussé
serge jouent remplissent inconsidérément
décade conduite perfectionner monté
écraser assainir capitalistes fromage
mont cuivre pétoche trempé
pierres fringues interdit majorité
restés entretiens fendiller savoureux
parcours anatomiste saccage symbolique
radier courage plainte indépendant
passé dinitrile selon volaille
forts absorbé arrogant satire
concertation picasso préparé noël
pêcher inventaire repéré renfoncement
virus ferdinand éloigner contraction
raciale carnets intégrale paf
kiev laisser-aller irrévérence vivace
épines espagnoles laissons panne
enrichi ballastages frileux motards
recouvrir désuni évalué motivés
kanak prématurément blason hitler

<?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__);