我想在我的域名(我的互联网根文件夹)下创建一个包含所有图像的图库。所有这些图像都在不同的文件夹中。什么是“浏览”所有文件夹并返回图像的最佳方式?
答案 0 :(得分:1)
看看opendir你想编写一个在递归循环中调用的函数,该函数可以遍历特定目录中的文件,检查文件扩展名并将文件作为数组返回你将与全局数组合并。
答案 1 :(得分:1)
将Google Image Search与site: www.mydomainwithimages.com
一起用作搜索字词,这将显示所有索引图像。只要您的robots.txt文件不排除Google抓取工具,这应该是您网域中的所有内容。
答案 2 :(得分:0)
取决于托管系统,您可以使用命令行与exec或passthru
find /path/to/website/root/ -type f -name '*.jpg'
如果你不能做这样的事情,就像火说的那样,opendir是要走的路。
答案 3 :(得分:0)
我会给PHP的DirectoryIterator一个旋转。
这是未经测试的伪代码,但它应该有点像这样:
function scanDirectoryForImages($dirPath)
{
$images = array();
$dirIter = new DirectoryIterator($dirPath);
foreach($dirIter as $fileInfo)
{
if($fileInfo->isDot())
continue;
// If it's a directory, scan it recursively
elseif($fileInfo->isDir())
{
$images = array_merge(
$images, scanDirectoryForImages($fileInfo->getPath())
);
}
elseif($fileInfo->isFile())
{
/* This works only for JPEGs, oviously, but feel free to add other
extensions */
if(strpos($fileInfo->getFilename(), '.jpg') !== FALSE)
{
$images[] = $fileInfo->getPathname();
}
}
}
return $images;
}
请不要起诉我,如果这不起作用,它真的很有点从我的帽子,但使用这样的功能将是解决你的问题的最优雅的方式,imho。
//编辑:是的,这与火指出的基本相同。