|
Автор |
Сообщение |
Игорь Кузнецов
Зарегистрирован: 13.06.2015 Сообщения: 9 Откуда: Екатеринбург
|
|
|
|
К ранее опубликованным ошибкам из этой книги:
Параграф 12.1 Генератор случайных чисел.
Сценарий motd.php:
Код: |
<?php
$motd = file('motd.txt');
$max = count($motd);
$i = mt_rand(0, $max);
echo $motd[$i];
?> |
Рассмотрим пример: Если в файле motd.txt 3 строки, то $max = 3. Получается, что mt_rand работет в диапазоне 4-х строк (от 0 до 3), и, естественно, случайно выдаёт фразы из файла motd.txt, а случайно — сообщение об ошибке.
Правильно, всё-таки, будет вычесть единицу из переменной $max:
Код: |
$i = mt_rand(0, $max-1); |
— так сценарий работает без ошибок. |
|
Вернуться к началу |
|
|
den
Старожил
Зарегистрирован: 31.01.2006 Сообщения: 13870 Откуда: Кировоград, Украина
|
|
|
|
Ошибка неучтенной единицы Классика |
|
Вернуться к началу |
dhsilabs@jabber.ru |
|
|
|
|
 Главная страница сайта
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|