- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Переиграть и победить: как анализировать конкурентов для продвижения сайта
С помощью Ahrefs
Александр Шестаков
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Подскажите! Как сделать pandom от 1 до 100 с исключением заданных значений.
К примеру:
$a="5";
$b="11";
echo rand(1,100);
Надо что-бы отображалось любое число от 1 до 100 но отличное от значений переменных $a и $b
Самый простой способ - генерить число повторно, пока оно не устроит.
function smartrand($min, $max, $exceptions) {if ($max - $min > count($exceptions)) {
do {
$value = rand($min, $max);
} while (array_search($value, $exceptions) !== false);
} else {
return false;
}
}
Третий параметр - массив исключений. В вашем случае array(5, 11)
Можно попроще, так например:
Можно попроще
Не универсально :)
Только, предложенную функцию smartrand нужно аккуратненько использовать. Не помешало бы дополнительных проверок для входных параметров добавить, чтобы уж действительно универсально получилось.
Версия bondarev.pp.ru, почему то не работает!
А версия Vitо, отображает числа 5 и 11
Правильнее...
Только смотрите, чтобы зацикливания не произошло... Следите за входными параметрами.
Правильнее...
Только смотрите, чтобы зацикливания не произошло... Следите за входными параметрами.
Так тоже пробовал, не отображается ничего! Можно поподробнее на примере как отследить параметры?
Ну так нужно еще и вывести значение... Я уж думал, вы догадаетесь)
Добавьте в конце...
Ну так нужно еще и вывести значение... Я уж думал, вы догадаетесь)
Добавьте в конце...
Естественно я добавил :)
Да уж, логические ошибки очень легко появляются...
Вот, уже проверенный простой код. Неуниверсальный, но конкретно по вашему случаю.