php скрипт случайной новости, высказывания, афоризма

Если ваш сайт поддерживает php, а 90% сайтов имеют такую возможность, то вы можете украсить его скриптом, который при каждом обновлении страницы будет загружать случайную новость, картинку или умное высказывание.

php код такого срипта будет прост, как два рубля. Для его реализации мы создадим функцию ranom_item(), внутри которой поместим массив $item[]. И каждый элемент массива будет содержать какое-то сообщение пользователю.

Код скрипта (слова-палиндромы - читаются справа-налево и слева направо одинаково):

<?php
function ranom_item() {
$item[] = 'А роза упала на лапу Азора';
$item[] = 'Нажал кабан на баклажан';
$item[] = 'У скал плакса ласкал плаксу';
return $item[mt_rand(0, count($item) - 1)];
}
?>
<?=ranom_item();?>

Содержимое можно элементов легко обрамить html тегами или выводить на печать в виде обычного текста. Будьте осторожнее с двойными кавычками. Если в тексте их надо использовать, то просто экранируйте их так: \"

Теперь, чтобы вывести случайное значение из массива, будем использовать функцию mt_rand(min, max); - она принимает два значения: минимальное число и максимальное число, в пределах которых будет идти рэндом.

Так как массив начинается с нуля, то минимальным будет всегда ноль. Чтобы автоматически узнать число элементов в массиве воспользуемся count($item). Но это не совсем правильно. К примеру в массиве 10 элементов, так как счет будет идти с нуля, то индекс последнего будет равен 9, а count($item) покажет 10. В результате чего появится ошибка при вызове массива с 10 индексом. Чтобы предотвратить такую ошибку, надо просто всегда вычитать единицу из результата: count($item) - 1.

И, наконец, чтобы вызвать функцию, просто в нужном месте пропишите: <?=ranom_item();?>

Вот такой простой код позволит вам легко выводить на своих страницах любое рэндомное содержимое, будь то текст, css стиль, фон или картинка. Также смотрите улучшенный код, который позволит планировать новости по дате.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *


Введите капчу: