################################################################################ # # fake_mail.php # # version 1.0, 2002-12-15 # # (c) Dmitry Borodin, http://php.spb.ru/php/fake_mail.php # ################################################################################ ini_set("display_errors",1); // создать согласную function s() { $word="qwrtypsdfghjklzxcvbnm"; return $word[mt_rand(0,strlen($word)-1)]; } // создать гласную function g() { $word="euioam"; return $word[mt_rand(0,strlen($word)-1)]; } // разные последовательности гласных/согласных, которые дают человеко-подобные слова function name0() { return s().g().s(); } function name1() { return s().g().s().g(); } function name2() { return s().g().g().s(); } function name3() { return s().s().g().s().g(); } function name4() { return g().s().g().s().g(); } function name5() { return g().g().s().g().s(); } function name6() { return g().s().s().g().s(); } function name7() { return s().g().g().s().g(); } function name8() { return s().g().s().g().g(); } function name9() { return s().g().s().g().s().g(); } // эти "клевые" числа люди любят использовать в адресах email $cool=array(1,2,5,10,99,100,111,666,1999,2000,2001,2002,2003); // создать случайное слово function randword() { global $cool; $func="name".mt_rand(0,9); $func2="name".mt_rand(0,9); switch (mt_rand(0,10)) { case 0: return $func().mt_rand(1,99); case 1: return $func()."-".$func2(); case 2: return $func().$cool[mt_rand(0,count($cool)-1)]; case 3: case 4: return randpass(mt_rand(3,12)); default: return $func(); } } // тоже, но заданной долины из совершенно случайных букв function randpass($len) { $word="qwertyuiopasdfghjklzxcvbnm1234567890"; $s=""; for ($i=0; $i<$len; $i++) { $s.=$word[mt_rand(0,strlen($word)-1)]; } return $s; } // в 33% случаях брать домен из этого списка (случайный домен) $domain1=array("hotmail.com","microsoft.com","mail.com","imail.com","microsoft.ru"); $d1c=count($domain1); // в 66% случаях генерить домено случайным образом $domain2=explode(" ","gs ac af al dz as ad ao ai aq ag ar am aw au at az bs bh bd bb by be bz bj bm bt bo ba bw bv br io bn bg bf bi by kh cm ca cv ky cf td cl cn cx cc co km cg ck cr ci hr hr cu cy cs dk dj dm do tp ec eg sv gq ee et fk fk fo fj fi fr gf pf tf ga gm ge de de gh gi gr gl gd gp gu gt gn gw gy ht hm hn hk hu is in id ir iq ie il it jm jp jo kz ke ki kp kr kw kg la lv lb ls lr ly li lt lu mo mk mg mw my mv ml mt mh mq mr mu mx fm md mc mn ms ma mz mm na nr np nl an nt nc nz ni ne ng nu nf mp no om pk pw pa pg py pe ph pn pl pt pr qa re ro ru rw kn lc vc ws sm st sa sn sc sl sg si sb so za es lk sh pm sd sr sj sz se ch ch sy tw tj tz th tg tk to tt tn tr tm tc tv ug ua ae uk gb us um uy su uz vu va ve vn vi vg wf eh ye yu zr zm zw com edu net mil org gov kp kr la su sk cz"); $d2c=count($domain2); // Пометка для роботов поисковых машин, что эту страницу нельзя индексировать echo "
\n\n"; // Имя текущего скрипта $fn=getenv("SCRIPT_NAME"); // выдать 0-10 ссылок (примерно 5 за раз) $cnt=mt_rand(0,10); for ($i=0; $i<$cnt; $i++) { $rnd=randpass(mt_rand(1,3)); $day=date("d_m"); echo "\n\n\n"; // выдать 0-1000 email'ов (примерно 500 за раз) $cnt=mt_rand(0,1000); for ($i=0; $i<$cnt; $i++) { $u=randword(); if (mt_rand(0,2)==0) $d=$domain1[mt_rand(0,$d1c-1)]; else $d=randword().".".$domain2[mt_rand(0,$d2c-1)]; echo " $u@$d \n"; } ?>