php - 读取远程目录的选项

标签 php parsing directory

我有一个根据特定条件显示图像的脚本。当不满足任何条件时,我想随机显示一张标准(备份)图像。这些其他图像位于远程服务器上。我读到您无法读取远程服务器上的目录,这是有道理的。

我最好的选择是将文件放入远程服务器的图像目录中,该目录输出所有图像文件名,以便我可以使用其他服务器解析它?有没有更简单的方法?

我不想使用 FTP ( http://php.net/manual/en/book.ftp.php )。

基本上,我可以选择哪些选项来获取该文件夹中的图像名称?

谢谢, 瑞安

更新:

@ mario's answer重量轻,工作起来就像一个魅力。这正是我想要的解决方案,但经过更多思考,并读到即使@mario也会采取不同的做法,我决定选择@ bensiu's answer ,因为对我来说,控制和安全比便利更重要。使用@mario的方法,很难知道您获得的数据是否良好(缺乏控制)并且您正在暴露您的目录/一些服务器信息(安全)。 @bensiu 的建议涉及第二个文件(不方便),但提供了我最终决定采用的控制和安全性!

谢谢两位!

-瑞安

最佳答案

我更喜欢像 @bensiu 指出的那样精确且专用的处理程序脚本。

但另一种方法是读出目录列表。一个简单的 Apache 生成的 mod_index 列表就足够了:

$html = file_get_contents("http://example.com/images/");
preg_match_all('/<a href="([-\w\d.]+\.(jpeg|png|gif))"/', $html, $uu);
$files = $uu[1];

关于php - 读取远程目录的选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4902985/

相关文章:

c - 编写简单的 du clone。获取子目录中文件大小的随机值。

php - 在 PHP 中压缩文件时删除目录结构

php - 如何设置html文件夹的权限

php - 如何使用 PHPExcel 将 80MB+ xlsx 处理到数据库 MySQL?

javascript - mysql 数据库日期时间格式的 JQuery 日期和时间

php - 可以将邮政地址存储为一个文本字段,而不是 street1、street2 等吗?

string - Haskell 提取字符串中的子字符串

c++ - Bison 中的 $$ 是什么?

java - 不同长度的字符串解析

php - 将 ../转换为真实目录 PHP