首页  >  文章  >  后端开发  >  php ftp下载文件的代码一例

php ftp下载文件的代码一例

WBOY
WBOY原创
2016-07-25 09:00:511067浏览
为大家介绍一个php ftp函数下载文件的例子,主要是ftp相关函数的应用,有需要的朋友,参考下了。

在以往的php 教程中,我们也介绍过相关的例子,比如:php使用ftp下载文件的简单例子 使用ftp传送、下载、删除文件的三个例子 ,今天举一个简单的吧,方便初学的朋友。

代码如下:

<?php
    /**
    * 函数名 php_ftp_download
    * 功能   从ftp服务器上下载文件
    * 入口参数
    * filename 欲下载的文件名,含路径
    * by http://bbs.it-home.org
    */
    function php_ftp_download($filename) {
      $phpftp_host = "ftplocalhost";    // 服务器地址
      $phpftp_port = 21;            // 服务器端口
      $phpftp_user = "name";        // 用户名
      $phpftp_passwd = "passwrd";        // 口令
      $ftp_path = dirname($filename) . "/";    // 获取路径
      $select_file = basename($filename);    // 获取文件名

      $ftp = ftp_connect($phpftp_host,$phpftp_port);    // 连接ftp服务器
      if($ftp) {
        if(ftp_login($ftp, $phpftp_user, $phpftp_passwd)) {    // 登录
          if(@ftp_chdir($ftp,$ftp_path)) {            // 进入指定路径
            $tmpfile = tempnam( getcwd()."/", "temp" );    // 创建唯一的临时文件
            if(ftp_get($ftp, $tmpfile, $select_file, ftp_binary)) {    // 下载指定的文件到临时文件
              ftp_quit( $ftp );    // 关闭连接
              header("content-type: application/octet-stream");
              header("content-disposition: attachment; filename=" . $select_file)//content-disposition:inline; 表示可以在线打开文件!
              readfile($tmpfile);
              unlink($tmpfile );    // 删除临时文件
              exit;
            }
            unlink($tmpfile );
          }
        }
      }
      ftp_quit($ftp);
    }
?>


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn