ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
 
 
Опции темы Поиск в этой теме Опции просмотра

странности рандоминга (PHP)
  #1  
Старый 06.03.2010, 22:59
Аватар для mac737
mac737
Новичок
Регистрация: 22.01.2010
Сообщений: 8
Провел на форуме:
53752

Репутация: 0
По умолчанию странности рандоминга (PHP)

Нужно было сделать что то вроде генератора ников на пхп. Много чего нашёл готового, но когда стал разбираться со всем этим мне показался странным процент уникальности такой генерки.

Вот простенький скрипт
PHP код:
<?php
$rands 
null;
for (
$j=0;$j<10000;$j++)//число генерируемых ников за раз 
    
$rands[] = generate_name(2); // 2- это число символов в нике 
echo count(array_unique($rands)).'<br>'//здесь из массива выбираются только уникальные значения 

$rands null;
for (
$j=0;$j<10000;$j++)
    
$rands[] = generate_name(3);
echo 
count(array_unique($rands)).'<br>';

$rands null;
for (
$j=0;$j<10000;$j++) 
    
$rands[] = generate_name(4);
echo 
count(array_unique($rands)).'<br>';

$rands null;
for (
$j=0;$j<10000;$j++)
    
$rands[] = generate_name(10);
echo 
count(array_unique($rands)).'<br>';

$rands null;
for (
$j=0;$j<10000;$j++)
    
$rands[] = generate_name(20);
echo 
count(array_unique($rands)).'<br>';

$rands null;
for (
$j=0;$j<10000;$j++)
    
$rands[] = generate_name(30);
echo 
count(array_unique($rands)).'<br>';

$rands null;
for (
$j=0;$j<10000;$j++)
    
$rands[] = generate_name(40);
echo 
count(array_unique($rands)).'<br>';



function 
generate_name($len){
    
$abc = 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');
    for (
$i=0$i<$len$i++)
        
$str .= $abc[array_rand($abc)];

    return 
$str;
}

?>
вот что у меня возвращает такой скрипт (из раза в раз значения меняются совсем чуть-чуть)
Код HTML:
560
2270
1210
1211
1211
1211
1211
Как 10000 3-х символьных слов могут быть более уникальны между собой в сранвении с уникальностью 10000 20-и символьных
То ли я туплю, то ли просто что то недопонимаю..

Последний раз редактировалось mac737; 06.03.2010 в 23:14..
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Books PHP FRAGNATIC PHP, PERL, MySQL, JavaScript 186 21.02.2010 02:41
На PHP, как на "Новые ворота"... Mertvii-Listopad Чужие Статьи 7 18.09.2006 12:42
Безопасность в Php, Часть Iii k00p3r Чужие Статьи 0 11.07.2005 19:02
Защищаем Php. Шаг за шагом. k00p3r Чужие Статьи 0 13.06.2005 11:31



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ