Password Strength

littérature sand libéral attribue
chemises balnéaire rosa exciter
déposition arrivées orchestres hétérogénéité
cartier raquette déposé flou
baie descendre frank proposée
dédommagement sourire provoquée réclamait
tonique italiennes correspondent rentrées
reluire privatisée archidiacre économiquement
bénéfices gamelle conduirait tsariste
arracher financements affirmation protéine
maintenus communautaire saurait appartient
trouvons dessoûler affluent quantitatives
viendra bains fascistes économiques
indolent subordonnés subséquent irakien
condescendant mare définies méridional
révolte capitales malraux croc-en-jambe
intérieurs mil ferrari ambitieuse
toi changement dédire enfantin
délateur républicains éreinter écueil
inspecteurs calvitie cellulaire tuée
inaugurer prise dialectalisme régularité
gambettes matches sûrs précédant
anarchisme apologiste qualifiant pompier
campanile rationalité arrestation hélicoptère
ferment marianne longueur rêvasser
expulser méfiance bonhomie clerc
mène sain contacté races
précieux agissent séparant gallois
supposer entrepôt contribution conduite
cadeaux contrebande tenailles incorruptible
redoutent baraqué stratégie lièvre
fréteur morris bateau tourbière
parasol office éditorialiste arriver
conjurer résistant fine opprimer
éclatant groupement varie kurdes
compétition publicitaire saleté demander
humecter désespérer coucou félicité
commandants archéologues résidents entrepreneur
glacial déchaussé changer 
tacite débarque pêne photos
démontre satin condition restaient
rabaisser pesé lourdement ménage
nouvelles espacé bastia subventions
balatum marrakech ouïe contraignante
douteuses capes jaloux torride
épithélium plaques hoqueter rapetisser
affûtage ôter amener alluvions
taquiner quinzième revendique parvenir
lexical phénomènes induire croquer
tronc quatorze consœur leningrad
solution scie bouquiniste connotation
recherches éblouissant audiovisuel sympathies
timbre trivial sous-estimer ascendant
argenterie kahn dissensions fur
touchant fantasme affirmatif extraire
longueurs conservé aumône embouteillages
hélium presses savez valoir
intendance racket affrontement égalitaire
embrouiller desservir triomphateur seringue
montées snob nietzsche tels
coercition traduisait dessinées pivot
je criminels jésus arizona
fracture peines dépenser aveuglement
danseur centristes dédicace procédés
anniversaire carnivore bilatéral champignon
disparités vend cantons journalier
sourde président passage soucie
coupant vidéo gloutonnerie acceptent
échangés tutu agnès levés
gazeux objective anc reviendra
travaillait merci commando moyennant
anime bienfait laiterie perte
emballer désirant bornage réunie
al proviennent énumère mécontents
camionnage difficile cambodgienne chaotique
hiérarchie sécession sauveur hangar
bronze analyses gants buisson
anciens concerne comprendre verrouillé
bifurcation marie pénales emblavure
estimation diplômes pistolet mégalomane
décidèrent ajustements living-room godasse
empire romain almanach entonner bouillie
manœuvres quémander suppléer imposables
travaillaient avancé portait dépendent
formuler visible concluant oriolidé
sable asseyez-vous noisette tentateur
boat people suspendu malignité concis
broyer maillet obligatoirement arceau
lampe torche démonté aile ressemblait
publia line vigneron répand
adieux exanthème comparés prohibition
mûres occupation hindou assoiffé
vélocité marées nous condamnant
déchets successif réveillon akbar
établie chauffage sony recompter
apport put modifications profil
intervalle salisson hermétiquement gêner
volets investiture préliminaire avoine
marchandise financés  air
curatif hutte intellectuel tranquillité

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