我想从里面包含了一些图像的文件夹中选择4个随机图像随机选择不同的图像。从文件夹中的PHP
什么我想显示是一个表(2×2)其中,i可以显示4个随机不同的图像。
谁能告诉我怎样才能从一个文件夹中选择随机不同文件,这样我可以存储在一个可变的路径,然后可以使用这些变量在表中随机显示的图像!
有哪些可以选择一个文件夹或类似的东西随机文件的任何特殊功能?
我想从里面包含了一些图像的文件夹中选择4个随机图像随机选择不同的图像。从文件夹中的PHP
什么我想显示是一个表(2×2)其中,i可以显示4个随机不同的图像。
谁能告诉我怎样才能从一个文件夹中选择随机不同文件,这样我可以存储在一个可变的路径,然后可以使用这些变量在表中随机显示的图像!
有哪些可以选择一个文件夹或类似的东西随机文件的任何特殊功能?
glob()
从目录中获取所有文件。array_rand()
从数组中获得随机的条目。<?php
function get_imagess($root) {
$r = array();
$r = array();
$k = glob("$root/*");
shuffle($k);
foreach($k as $n) {
if (is_dir($n)) {
break;
//$r = array_merge($r, get_imagesss($n));
print_r("xxx");
} else {
$r[] = $n;
//print_r($n + "yeah");
}
}
return $r;
}
function get_images($root) {
$r = array();
$k = glob("$root/*");
shuffle($k);
$n = $k[0];
// foreach($k as $n) {
if (is_dir($n)) {
$r = array_merge($r, get_imagess($n));
} else {
$r[] = $n;
}
// }
return $r;
}
$files = get_images('.');
//print_r($files);
//break;
shuffle($files);
$true=true;
$extList = array();
$extList['gif'] = 'image/gif';
$extList['jpg'] = 'image/jpeg';
$extList['jpeg'] = 'image/jpeg';
$extList['png'] = 'image/png';
$ass=0;
while($true)
{
$ass=$ass+1;
if($ass>100){$true=false;}
$imageInfo = pathinfo($files[0]);
if (isset($extList[ strtolower($imageInfo['extension']) ])){
$temp = substr($files[0], -5);
$temp = strtolower($temp);
if($temp == "p.jpg"){shuffle($files);} // checking if jpg has a preview file
else{ // no preview found
$true=false;
//print_r($temp);
}}
else
{
shuffle($files);
//print_r('bad' + $temp);
}
}
//print_r($files[0]);
echo '<HTML><meta HTTP-EQUIV="Refresh" CONTENT="5; URL=./ImageRotateMaybe.php"><img src="';
echo $files[0];
echo ' " width=100%>';
?>
_Why_这是正确的答案?它看起来像很多代码......你能解释一下是怎么回事? – Ben
你能否给我一个小例子? @bsdnoobz –