PHP按特定文件扩展FTP搜索FTP并下载

时间:2016-03-19 09:28:07

标签: php file download ftp

我遇到了目前正在进行的项目。

我必须创建一个PHP脚本,将文件上传到特定的FTP,该文件由另一个正在观察FTP的脚本处理。处理完成后,将使用4种可能的文件扩展名之一生成新文件,并自动删除原始文件。在我的问题开始的地方,我对PHP的了解并不多,因为我很少使用它。

所以我必须使用四个可能的Extensions之一搜索该文件,并将其下载到运行PHP Script的机器上,并且需要通过此PHP脚本完成搜索。任何建议如何实现这一点我没有一丝一毫的线索:(

1 个答案:

答案 0 :(得分:2)

您无法通过FTP协议进行搜索。

您必须列出目录,然后在本地搜索所需的文件:

$ftp = ftp_connect( $ftpHost );
ftp_login( $ftp, $ftpUsername, $ftpPassword ) or die( 'Oh No!' );
$files = ftp_nlist( $ftp, 'www/myDir' );
$filteredFiles = preg_grep( '/\.php$/i', $files );
ftp_close($ftp); 

在上面的示例中,www/Dir目录中.php扩展名的所有文件现在都在$filteredFiles数组中。

备选方案:

  • 如果您的远程服务器允许SSH2连接,您可以通过SSH2 connection;
  • 检索文件列表
  • 如果您的远程服务器启用了php / HTTP,您可以在远程服务器上编写php脚本来搜索文件,然后执行HTTP请求。