<?php
/**
* Created by PhpStorm.
* User: blue.li
* Date: 2019/2/22
* Time: 下午1:41
*/
namespace App\Libs;
class FtpException extends \Exception
{
}
class Sftp
{
private $conn = NULL;
private $ressftp = NULL;
public function __construct($host, $port = 22)
{
$this->connect($host, $port);
}
public function connect($host, $port)
{
$this->conn = ssh2_connect($host, $port); //sftp 要用 ssh2_connect 不能用ftp_ssl_connect
if (!$this->conn) {
throw new FtpException('Unable to connect');
}
}
public function login($username, $password)
{
if (ssh2_auth_password($this->conn, $username, $password)) {
$this->ressftp = ssh2_sftp($this->conn);
} else {
throw new FtpException('username or password error');
}
}
public function get($remote, $local)
{
return copy("ssh2.sftp://" . intval($this->ressftp) . $remote, $local);
}
public function put($local, $remote)
{
return copy($local, "ssh2.sftp://" . intval($this->ressftp) . $remote);//這裡要intval 否則:failed to open stream: operation failed
}
public function mkdir($path)
{
ssh2_sftp_mkdir($this->ressftp, $path, 0777, true);
}
public function exits($file)
{
return file_exists("ssh2.sftp://" . intval($this->ressftp) . $file);
}
public function delete($file)
{
return ssh2_sftp_unlink($this->ressftp, $file);
}
}
sftp 上傳類
相關文章
- Java SFTP 上傳、下載等操作JavaFTP
- c#連線SFTP上傳檔案C#FTP
- jftp通過sftp協議上傳檔案FTP協議
- xshell 使用 sftp上傳下載檔案FTP
- laravel 中使用 sftp 驅動上傳相關配置LaravelFTP
- java實現sftp檔案的上傳下載JavaFTP
- 使用SecureCRT的SFTP將檔案上傳到Liunx系統上SecurecrtFTP
- PHP上傳圖片類PHP
- ServletFileUpload類上傳檔案Servlet
- 開源OA系統搭建教程:在服務或代理中實現sftp的上傳FTP
- java 上傳 下載檔案工具類Java
- sftpFTP
- sftp命令FTP
- 如何在shell指令碼里使用sftp批次傳送檔案指令碼FTP
- 在java中使用SFTP協議安全的傳輸檔案JavaFTP協議
- sftp指令碼FTP指令碼
- SFTP協議FTP協議
- Node分片上傳和OSS上傳
- 使用 SFTP 配置 WebSphere Partner Gateway V6.2 傳送和接收檔案FTPWebGateway
- [封裝] 小程式直連 oss 上傳檔案JS類封裝JS
- 編寫還可以的php 圖片上傳類程式碼PHP
- .Net通用大檔案上傳類(可上傳大檔案,vs2005)
- linux配置sftpLinuxFTP
- idea 配置sftpIdeaFTP
- SFTP服務搭建FTP
- sftp簡單使用FTP
- 函式組:SFTP函式FTP
- FLASHCS3多檔案上傳原始碼(類似uccenter社群)S3原始碼
- php檔案上傳之多檔案上傳PHP
- POST上傳
- SFTP, FTPS區別FTP
- 我使用過的Linux命令之sftp - 安全檔案傳輸命令列工具LinuxFTP命令列
- Windows下批處理分享:透過WinSCP實現SFTP傳輸資料WindowsFTP
- vue-resource+iview上傳檔案取消上傳VueView
- 學姐,影片上傳不了,我上傳了圖片
- Laravel 圖片上傳到本地和七牛雲類封裝整合Laravel封裝
- Java GenericObjectPool 物件池化技術--SpringBoot sftp 連線池工具類JavaObject物件Spring BootFTP
- [BUG反饋]上傳EXCEL想做匯入,發現上傳差不多成功被重置上傳Excel