如何使用 PHP 在 FTP 上下载最新的文件?

How can I download the most recent file on FTP with PHP?(如何使用 PHP 在 FTP 上下载最新的文件?)
本文介绍了如何使用 PHP 在 FTP 上下载最新的文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在 FTP 服务器上有一些文件.此服务器上的任何时间都在上传新文件.我想下载最后一个文件.如何从该服务器获取最后上传的文件?所有文件都有不同的名称.

On FTP server has some files. For any hour on this server is uploading new files. I'd like to download last file. How can I get last uploaded file from this server? All files are with different names.

我使用以下脚本下载一个文件.

I used folowing script to downloading one file.

$conn = ftp_connect("ftp.testftp.com") or die("Could not connect");
ftp_login($conn,"user","pass");
ftp_get($conn,"target.txt","source.txt",FTP_ASCII);
ftp_close($conn);

提前致谢!!!

推荐答案

没有办法确定哪个文件是最新的,因为没有上传时间"属性这样的东西.您没有过多提及 FTP 服务器,但如果您对上传有一定程度的管理,您可以确保在上传时设置上次修改时间.这是否最终起作用取决于您的 FTP 服务器和可能的客户端.

There is no way to be sure which file is the most recent, as there is no such thing as an "uploaded time" attribute. You didn't mention much about the FTP server, but if you have some level of management over the uploads, you could ensure that the last modified time is set on upload. Whether this ends up working is down to your FTP server and possibly clients.

假设您的修改时间等于上传时间,您可以执行以下操作:

Assuming your modified times are equivalent to upload times, you could do something like this:

// connect
$conn = ftp_connect('ftp.addr.com');
ftp_login($conn, 'user', 'pass');

// get list of files on given path
$files = ftp_nlist($conn, '');

$mostRecent = array(
    'time' => 0,
    'file' => null
);

foreach ($files as $file) {
    // get the last modified time for the file
    $time = ftp_mdtm($conn, $file);

    if ($time > $mostRecent['time']) {
        // this file is the most recent so far
        $mostRecent['time'] = $time;
        $mostRecent['file'] = $file;
    }
}

ftp_get($conn, "target.txt", $mostRecent['file'], FTP_ASCII);
ftp_close($conn);

这篇关于如何使用 PHP 在 FTP 上下载最新的文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Convert JSON integers and floats to strings(将JSON整数和浮点数转换为字符串)
in php how do I use preg replace to turn a url into a tinyurl(在php中,如何使用preg替换将URL转换为TinyURL)
all day appointment for ics calendar file wont work(ICS日历文件的全天约会不起作用)
trim function is giving unexpected values php(Trim函数提供了意外的值php)
Basic PDO connection to MySQL(到MySQL的基本PDO连接)
PHP number_format returns 1.00(Php number_Format返回1.00)