Онлайн-справочник по самым часто задаваемым вопросам из темы "Как сделать?" на форуме QSP.su
9.8. Как сделать вывод рандомного изображения?
В: Как сделать вывод рандомного изображения?
О:
Если у вас есть несколько изображений, имена которых различаются лишь порядковыми номерами, то вывод одного из них случайным образом довольно прост.
Например, изображения с названиями от "pic_1.jpg" до "pic_10.jpg" лежат в папке с игрой. Вывести на экран случайное можно так:
Плеер встретит данную команду, и в первую очередь раскроет подвыражение. В подвыражении стоит функция `rand(1,10)`, которая вернёт случайное число от 1 до 10. Это число будет подставленно вместо подвыражения, и таким образом в атрибуте `src` получится полное название файла изображения. Плееру останется только вывести его на экран.
Если же у вас есть изображения с названиями, которые различаются не только порядковыми номерами, или лежат в разных папках, вывести на экран одно случайное будет ненамного сложнее. Главное предварительно внести все пути изображений в массив:
$pic_mass[1]="фон/пасмурный_вечер.png"
$pic_mass[2]="image/opendoor.jpg"
$pic_mass[3]="personage/чукча.gif"
$pic_mass[4]="personage/жена чукчи.gif"
$pic_mass[5]="arrow.png"
Затем уже выбранный случайный элемент массива подставляется в аттрибут `src`:
Точно так же. Плеер попытается раскрыть подвыражение, в котором находится выражение `$pic_mass[rand(0,5)]` — то есть плееру нужно получить значение некой ячейки массива `$pic_mass`. Номер ячейки определяет функция `rand(0,5)` — то есть случайное число от 0 до 5 (таков номер последней заполненной ячейки массива). Плеер получит значение этой ячейки (а туда записан путь к изображению) и подставит вместо подвыражения. Таким образом в атрибуте `src` будет полный путь к изображению, плееру останется только вывести изображение на экран.