使用php从目录加载随机图像
我需要从目录中选择一个随机图像。我见过一些使用glob()的方法;但我希望使用斯堪的纳维亚();功能使用php从目录加载随机图像,php,arrays,.htaccess,Php,Arrays,.htaccess,我需要从目录中选择一个随机图像。我见过一些使用glob()的方法;但我希望使用斯堪的纳维亚();功能 function random_img(){ $imageDir = wptouch_get_bloginfo('template_directory').'/images/default-tiles/'; $images = scandir($imageDir); $randomImage = $images[array_rand($images)]; return $randomImag
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:not implemented in“/myfile/directory/”请尝试此方法,我认为您使用的路径不正确:
$imageDir = $_SERVER['DOCUMENT_ROOT'] .
get_template_directory_uri() .
'/images/default-tiles/';
问题是,您使用的目录实际上不是本地系统上的目录,而是URL。不能在URL中列出文件。任何人怎么知道应该包括什么?没有一些普遍实现的魔法,HTTP上的资源甚至不必与文件相对应
您需要做的是找出这些文件在本地系统上的位置,并使用该路径。
/images/default tiles/
确实是您的本地图像目录吗?如果您试图在不同的fopen包装器(如HTTP)上列出目录的内容,通常会出现这样的错误。我已经编辑了我的问题,因此它包含了真正的动态路径。当您echo wptou\u get\u bloginfo('template\u directory')时会输出什么
?beta.sr.local/wp content/wptouch data/themes/CMN Touch Base/iphone/@CNCPTS查看我的编辑,这是否有效?这让我更接近了,但最终唯一有效的解决方案是:$imageDir=ABSPATH。$wp-content/wptouch data/themes/CMN Touch Base/iphone/images/default tiles/;