从版本4开始,PHP内置了FTP连接功能,使通过FTP传输文件非常容易。
所涉及的主要功能被调用ftp_connect(),该功能将FTP主机作为参数并尝试连接到该主机。如果需要,还可以将端口和超时限制添加到功能中。
建立连接后,ftp_login()将使用该功能尝试登录。如果成功,此函数将返回true;如果失败,则返回false。下面的代码段将尝试连接并登录到FTP服务器,如果任何步骤失败,则该代码将打印出一条消息,说明是这样。
$host= 'ftp.example.com'; $user = 'notarealusername'; $password = 'notarealpassword'; $ftpConn = ftp_connect($host); $login = ftp_login($ftpConn,$user,$password); // 检查连接 if ((!$ftpConn) || (!$login)) { echo 'FTP connection has failed! Attempted to connect to '. $host. ' for user '.$user.'.'; } else{ echo 'FTP connection was a success.'; $directory = ftp_nlist($ftpConn,''); echo '<pre>'.print_r($directory, true).'</pre>'; } ftp_close($ftpConn);
该ftp_close()函数获取资源标识符并关闭它。如果代码失败,这是打印出来的内容。
FTP connection has failed! Attempted to connect to ftp.example.com for user notarealusername.
如果连接成功,则脚本将尝试检索根目录的内容,这是使用ftp_nlist()函数完成的。这是代码成功连接到FTP服务器时可能会发现的典型示例。
FTP connection was a success. Array ( [0] => cgi-bin [1] => logfiles [2] => html )
有许多不同的FTP功能可用,涵盖了希望任何FTP程序都能完成的主要工作。您可能使用的主要方法是ftp_get()下载文件,ftp_put()上传文件和ftp_nlist()查看目录的内容。还有一个称为的功能ftp_chmod(),可让您设置FTP服务器上目录的权限。