PHP - 从远程服务器获取 ftp 列表的最佳做法是什么?

标签 php ftp

从远程服务器获取 ftp 文件列表的最佳做法是什么?

1) 使用 ftp_connect() 函数

<?php

// set up connection
$conn = ftp_connect($ftp_server);

// login with username and password
$login = ftp_login($conn, $ftp_user_name, $ftp_user_pass);

// get contents of the current directory
$content = ftp_nlist($conn, ".");

// output content
var_dump($content);
?>

2) 使用scandir() 然后用print_r() 输出文件列表

<?php

$path = "ftp://login:password@ftpserver";

$files = scandir($path);

print_r($files);

?>

这两种方法都输出一个包含 ftp 目录/文件的数组。

最佳答案

我的意见是第一个更好,为什么:

  1. 它清楚地表明它是 ftp 连接,这意味着您不仅可以使用它来列出文件,还可以在以后需要时用于上传,还可以正确处理错误并提供更好的错误消息或日志记录<
  2. 第二种方法依赖于allow_url_fopen设置,由于可能存在安全漏洞,最好将其禁用

关于PHP - 从远程服务器获取 ftp 列表的最佳做法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29700359/

相关文章:

ftp - 有没有办法将文件同步到未安装 rsync 的远程位置?

c# - 在 C# 中使用 FTP 移动文件

php - 当我使用 jQuery AJAX 在我的页面上提交 tinyMCE 表单时,需要点击两次才能实际提交到数据库

php - Magento - 发现 SQLSTATE[23000] : Integrity constraint violation: 1062 Duplicate entry, 错误

php - 连接 2 个查询并发送到 mysql_query

python - Python 有丰富的 ftp 客户端库吗?

Matlab 使用私钥文件验证 FTP

php - 从 php 页面读取文本并将其插入数据库

php - PostgreSQL 日期范围

caching - Akamai 缓存刷新