PHP之FTP、SFTP上传下载

本文介绍了如何使用PHP进行FTP和SFTP的上传与下载操作,包括FTP/SFTP的基本代码示例,并详细讲解了PHP SFTP扩展的编译安装过程,包括下载libssh2和SSH的步骤,以及解决编译时可能遇到的问题。
摘要由CSDN通过智能技术生成

PHP之FTP、SFTP上传下载

对接三方时遇见接口采用文件加密后使用FTP或SFTP传输,使用PHP对接。所以产生了本篇文章(基于TP3.2)。本篇文章包括以下几点:

  • 基本代码
  • 使用方法
  • PHP之SFTP扩展库编译安装注意事项

转载请注明 —— [ 肖义熙 ]

一、PHP之FTP、SFTP代码,拷贝直接用

FTP及SFTP官方文档详见:
http://php.net/manual/en/book.ftp.php

http://php.net/manual-lookup.php?pattern=SFTP&scope=quickref

以下为本文最核心代码,拷贝直接使用:

1、FTP
  • TP3.2存放类文件目录下(Common/Org/)新建php文件:ftp.class.php
<?php
/******************************************** 
* MODULE:FTP类 
*******************************************/
class ftp 
{
    
  public $off;             // 返回操作状态(成功/失败) 
  public $conn_id;           // FTP连接 

  /** 
  * 方法:FTP连接 
  * @FTP_HOST -- FTP主机 
  * @FTP_PORT -- 端口 
  * @FTP_USER -- 用户名 
  * @FTP_PASS -- 密码 
  */
  function __construct($FTP_HOST,$FTP_PORT,$FTP_USER,$FTP_PASS) 
  {
    
    $this->conn_id = @ftp_connect($FTP_HOST,$FTP_PORT) or die("FTP服务器连接失败"); 
    @ftp_login($this->conn_id,$FTP_USER,$FTP_PASS) or die("FTP服务器登陆失败"); 
    @ftp_pasv($this->conn_id,1); // 打开被动模拟 
  } 

  /** 
  * 方法:上传文件 
  * @path  -- 本地路径 
  * @newpath -- 上传路径 
  * @type  -- 若目标目录不存在则新建 
  */
  function up_file($path,$newpath,$type=true) 
  {
    
    if($type) $this->dir_mkdirs($newpath); 
    $this->off = @ftp_put($this->conn_id,$newpath,$path,FTP_BINARY); 
    if(!$this->off) echo 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值