Прогеры по PHP Help me - Форум успешных вебмастеров - GoFuckBiz.com - Страница 3
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB88.6852
BTC/USD68446.3164
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 03.09.2011, 16:45
Start Post: Прогеры по PHP Help me 
  #21
xatchikzzz
Senior Member
 
Регистрация: 03.12.2009
Сообщений: 138
Бабло: $51655
По умолчанию

В общем господа прогеры есть такая простая задаа, поскольку сам в пхп вообще ноль то прошу вас помочь.

Нужно написать скрипт что бы он рандомно брал строку и вставлял в то место где я его поставлю.

Например в файле 1.txt который находится на хостинге hosting.com/1.txt находится текст
1.текст
2.текст
3.текст
Он должен после каждого обновления страницы выводить этот разные строки, помогите кто в этом шарит.
xatchikzzz вне форума  
Старый 03.09.2011, 20:12   #22
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
По умолчанию

генератор случайных чисел rand хуевый, он не катит вообще, тем более для выборки строк текста, тут надо mt_rand или самопис
да и вообще, нужен качественный источник энтропии

кстати, пробовали делать самопис в рамках какой-то лабы, получалось реально круче чем дефолтный рандом, более равномерное распределение вероятностей
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 03.09.2011, 20:22   #23
Drunk Monk
Je suis moine ivre
 
Аватар для Drunk Monk
 
Регистрация: 03.03.2009
Сообщений: 15,268
Бабло: $797172957
По умолчанию

Уже второй раз слышу про mt_rand, откуда ноги у этой байки растут?

Drunk Monk вне форума  
Старый 03.09.2011, 20:38   #24
dveredel
Читатель
 
Аватар для dveredel
 
Регистрация: 23.11.2007
Сообщений: 420
Бабло: $48745
По умолчанию

Цитата:
Сообщение от Drunk Monk Посмотреть сообщение
Уже второй раз слышу про mt_rand, откуда ноги у этой байки растут?
Ноги растут отсюда http://php.net/manual/ru/function.mt-rand.php
Хотя фактически главное что там написано "4 times faster", т.е. не то чтобы "рандомнее" а быстрее.

Ну и я тоже приверженец практики поэтому когда читаю пусть даже в доках что "ранд это плохо", а "эвал вообще ужос-ужос" -- то делаю свои тесты, как в твоем сравнении, которые четко показывают что там и как на самом деле. По сути все эти терки - борьба теории (или уважаемых, но устаревших источников информации) и практики, а я сугубо за практику.
dveredel вне форума  
Старый 03.09.2011, 20:39   #25
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
По умолчанию

Drunk Monk, а надо нормальными ОС пользоваться

ну и эта... 1) посчитай дисперсию или среднеквадратичное отклонение - так нагляднее будет; 2) цикол лучше объединить, хрен ее знает как там энтропия ходит в разные моменты времени

ну и я попробовал твой код, у меня mt_rand по ср.квад откл-ю лучше процентов на 5-15, запускал раз 10
скорость бы еще померять
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 03.09.2011, 20:44   #26
medar
кодер-энтузиаст
 
Аватар для medar
 
Регистрация: 04.04.2007
Адрес: Джамайка
Сообщений: 3,381
Бабло: $447150
По умолчанию

и у rand() и у mt_rand() не совсем равномерное распределение и это печалька.
medar вне форума  
Старый 03.09.2011, 20:49   #27
Drunk Monk
Je suis moine ivre
 
Аватар для Drunk Monk
 
Регистрация: 03.03.2009
Сообщений: 15,268
Бабло: $797172957
По умолчанию

100 лям рандов сгенерилось за 59 секунд, а 100 лям мт_рандов - за 57

Повторяю тест с распределением:
PHP код:
<?php
for($i=0;$i<10000000;$i++){
    
$rnd[rand(09)]++;
    
$mt_rnd[mt_rand(09)]++;
}

print_r($rnd);
print_r($mt_rnd);
?>
Цитата:
Array
(
[5] => 1000079
[4] => 999805
[9] => 999752
[0] => 1000058
[2] => 1000064
[3] => 1000073
[6] => 1000035
[8] => 1000044
[7] => 1000054
[1] => 1000036
)
Array
(
[8] => 999923
[4] => 1000442
[5] => 999893
[6] => 999288
[2] => 999006
[1] => 999696
[3] => 1000214
[0] => 1000699
[9] => 1000266
[7] => 1000573
)
Один хуй, короче
Drunk Monk вне форума  
Старый 03.09.2011, 21:01   #28
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
По умолчанию

Drunk Monk, мои 100 лямов:
Offtopic
- rand первым идет
Disp у меня на самом деле ср.квад.отлонение, а не дисперсия, но смысл тот же.

вот еще 10 лямов:
Offtopic
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 03.09.2011, 21:02   #29
Drunk Monk
Je suis moine ivre
 
Аватар для Drunk Monk
 
Регистрация: 03.03.2009
Сообщений: 15,268
Бабло: $797172957
По умолчанию

Вот и не понятно, почему срочно надо везде дописывать mt_
Drunk Monk вне форума  
Старый 03.09.2011, 21:05   #30
masolit
Senior Member
 
Регистрация: 18.08.2007
Сообщений: 1,098
Бабло: $199375
По умолчанию

FILE_IGNORE_NEW_LINES блять
masolit вне форума  
Старый 03.09.2011, 21:40   #31
xealey
Senior Member
 
Аватар для xealey
 
Регистрация: 04.09.2007
Сообщений: 1,267
Бабло: $254000
По умолчанию

по mt_rand

есть шаб, который вызывается внутри скрипта.
в шабе вызывается простейший ротатор картинок (mt_rand(0,$n).jpg) на php, отдающий заголовок+контент картинки

вопроса 2:
1) какого хрена при вызове ротатора n раз значение генерится одно (2 или более обращений к скрипту внутри одной страницы)
2) как заставить генерить каждый раз разные числа
xealey вне форума