PHP:在文件列表(远程文件)中查找最新添加的文件

PHP:在文件列表(远程文件)中查找最新添加的文件,php,Php,有一个url-download.software.com/releases/filename-x...*.rpm 我们需要准备一份可能的软件url组合列表x.0.0.0到x.99.99.99。我们已经下载了x.12.4.3版 查找最新的软件版本,检查是否比当前加载的版本更新,如果更新,则尝试下载。 问题: 找到最新版本,最快的方法是什么?当我这样做时,检查文件是否存在需要几个小时 function url_exists2($url) { $h = get_headers($url);

有一个url-download.software.com/releases/filename-x...*.rpm

我们需要准备一份可能的软件url组合列表x.0.0.0到x.99.99.99。我们已经下载了x.12.4.3版

查找最新的软件版本,检查是否比当前加载的版本更新,如果更新,则尝试下载。

问题:

找到最新版本,最快的方法是什么?当我这样做时,检查文件是否存在需要几个小时

function url_exists2($url) {
    $h = get_headers($url);
    $status = array();
    preg_match('/HTTP\/.* ([0-9]+) .*/', $h[0] , $status);
    return ($status[1] == 200);
}
//code to check if the file exists at all.. 
for($i=0; $i<=99; $i++)
{
    for($j=0; $j<=99; $j++)
    {
        for($k=0; $k<=99; $k++)
        {
            $filename = 'http://download.software.com/releases/filename-x.' . $i . '.' . $j . '.' . $k . '.rpm';
            if (url_exists2($filename)) 
            {
                echo "$filename - The file exists<br />";
            } else 
            {
                echo  "$filename - The file does not exist<br />";
            }
        }
    }
}
函数url\u exists2($url){
$h=获取标题($url);
$status=array();
preg_match('/HTTP\/.([0-9]+).*/',$h[0],$status);
返回($status[1]==200);
}
//用于检查文件是否存在的代码。。

对于($i=0;$iI)来说,取消发布页面(如果存在)更容易并获取下载链接。感谢您的回复,我真的很喜欢这个想法。但是,发布页面不是公开的。它在登录之后。因此,很难刮取页面。您可以通过为I,j&k保存最新的现有编号来加快整个过程。如果编号一致,并且没有遗漏任何编号,您可以重新发布在两次不存在的迭代后使其中断(例如:i=30已保存,i=31&i=32不存在,因此无需检查i=33…)也许你可以用它来加速整个过程。一百万次点击别人的网站来找到最新版本?是的…不要这样做。如果你请求父目录,你会得到目录列表吗?我认为取消发布页面(如果存在)更容易并获取下载链接。感谢您的回复,我真的很喜欢这个想法。但是,发布页面不是公开的。它在登录之后。因此,很难刮取页面。您可以通过为I,j&k保存最新的现有编号来加快整个过程。如果编号一致,并且没有遗漏任何编号,您可以重新发布在两次不存在的迭代后(例如:i=30已保存,i=31&i=32不存在,因此无需检查i=33…)使其中断。也许您可以使用更高的速度来加快整个过程。对其他人的网站进行一百万次点击以查找最新版本?是的……不要这样做。如果您请求父目录,是否会获得目录列表?