Реализация функции ранда - PullRequest
1 голос
/ 14 июля 2011

У меня есть следующий раздел кода. В любом случае я могу использовать функцию php rand() для случайного отображения элементов внутри foreach? Я пробовал Google, но я запутался, как внедрить его в эту ситуацию.

<?php
$dir = 'catalog/view/theme/default/gallery/';?>
<div id="Box">
<div id="slideShow">
<ul>
<?php foreach(glob($dir.'*.jpg') as $file) : ?>
<li><img width="370" height="480" alt="" src="<?=$file?>"/></li>
<?php endforeach; ?>
</ul>
</div>
</div>

Ответы [ 3 ]

4 голосов
/ 14 июля 2011

Предполагая, что вы хотите отобразить все изображения, но в случайном порядке, вы можете попробовать что-то вроде этого:

<?php
    $files = glob($dir . "*.jpg");
    shuffle($files);
    foreach($files as $file):
?>
<li><img width="370" height="480" alt="" src="<?= $file ?>" /></li>
<?php
    endforeach;
?>
1 голос
/ 14 июля 2011

Я использовал rand() в моем SELECT запросе перед использованием foreach, как order by rand(), он тоже работал.

0 голосов
/ 14 июля 2011

Вы можете прочитать файлы в массив и использовать array_rand

http://php.net/manual/en/function.array-rand.php

...