[英]Shuffle and display images from a directory in PHP
我正在嘗試從目錄中獲取上傳的圖像,並對其順序進行排序。 我能夠很容易地獲得圖像並按順序顯示它們,但似乎無法將它們改組!
<?php
$imagesDir = 'uploads/';
$images = glob($imagesDir . '*.{jpg,jpeg,png,gif}', GLOB_BRACE);
$randomImage = $images[array_rand($images)];
?>
<div id="images">
<?php
$print_r($images);
$shuffleimages = shuffle($images);
foreach($shuffleimages as $shuffleimage) {
echo '<img src="'.$shuffleimage.'" />';
}
?>
</div>
當我打印$images
我得到:
Array (
[0] => uploads/image1.jpg
[1] => uploads/image2.jpg
[2] => uploads/image3.jpg
[3] => uploads/image4.jpg
[4] => uploads/image5.jpg
)
我不知道這是否與glob函數有關,或者我如何更一般地檢索圖像? 我在SO上瀏覽了其他問題,但似乎看不到我在做什么/錯了!
您走的太遠了..沒有必要重新分配$images
... $shuffleimages
僅返回true
或false
布爾值
<?php
shuffle($images); // $images will be shuffled.
foreach($images as $shuffleimage) {
echo '<img src="'.$shuffleimage.'" />';
}
?>
您還可以使用sacndir
並使用sorting_order
參數通過對文件進行排序來對文件進行排序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.