为什么ftp_nlist为非空目录返回一个空数组


Why is ftp_nlist returning an empty array for a non-empty directory?

我的代码中的以下行返回一个空数组,而实际上给定的路径不是空的:

$file_list = @ftp_nlist( $link, '-a ' . $path );

该路径的权限为775。当我ls操作系统外壳中的路径时,我会看到预期的文件列表。

那么为什么ftp_nlist没有看到他们呢?

很可能是因为FTP服务器不了解-a。它试图将其解释为路径或文件掩码。它不匹配任何文件,因此结果集为空。

试着取下开关。


请注意,虽然有些服务器确实支持-a,或者至少可以忽略它,但它违反了FTP规范。NLST命令(或任何其他FTP命令)中根本没有开关。