20.5.4 使用其他的FTP函数
在PHP中,还有许多其他非常有用的FTP函数。函数ftp_size()能够显示远程服务器上一个文件的大小。此函数原型如下所示:
int ftp_size(int ftp_connection,string remotefile_path)
此函数返回远程文件的字节数或者-1(如果有错误的话)。但是,该函数并不被所有的服务器所支持。
函数ftp_size()的一个实际应用是计算出在特定传输速率一次文件传输所需的最大可执行时间。如果知道文件大小和连接速度,可以估算出传输可能需要的时间,并可以根据实际情况调用函数set_time_limit()。
通过如下所示代码,可以获得并显示远程FTP服务器特定目录上的文件列表:
$listing=ftp_nlist($conn,dirname($remotefile));
foreach($listing as$filename)
echo"$filename<br>";
此代码通过函数ftp_nlist()的调用获得特定目录中的文件名的列表。
对于FTP函数,凡是可能通过FTP命令行完成的事情,几乎都可以通过FTP函数来完成。
在PHP在线指南中,可以找到对应于每个FTP命令的特殊函数,其URL如下所示:http://php.net/manual/en/ref.ftp.php。
一个例外是命令mget(multiple get,也就是获得多个文件),但是可以通过函数ftp_nlist()获得文件列表并根据需要选择文件。