使用php从目录加载随机图像

时间:2012-09-19 20:01:22

标签: php arrays .htaccess

我需要从目录中选择一个随机图像。我见过一些使用glob()的方法;但我希望使用scandir();功能

function random_img(){
$imageDir =  wptouch_get_bloginfo('template_directory').'/images/default-tiles/';
$images = scandir($imageDir);
$randomImage = $images[array_rand($images)];

return $randomImage;
}

上面的函数应该拉一个图像,但我得到这个错误:

scandir(“/ myfile / directory /”)无法打开dir:未在“/ myfile / directory /”中实现

2 个答案:

答案 0 :(得分:0)

请尝试使用此功能,我认为您使用的路径不正确:

$imageDir = $_SERVER['DOCUMENT_ROOT'] . 
            get_template_directory_uri() .
            '/images/default-tiles/';

答案 1 :(得分:0)

问题是您使用的目录实际上不是本地系统上的目录,而是URL。您无法在URL列出文件。怎么会知道应该包括什么?没有一些普遍实现的魔法,而且基于HTTP的资源甚至根本不必与文件相对应。

您需要做的是弄清楚这些文件在本地系统上的位置,并改为使用该路径。