<?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
- xshell 使用 sftp上傳下載檔案FTP
- jftp通過sftp協議上傳檔案FTP協議
- laravel 中使用 sftp 驅動上傳相關配置LaravelFTP
- 使用SecureCRT的SFTP將檔案上傳到Liunx系統上SecurecrtFTP
- sftp 傳輸檔案FTP
- CentOS上搭建SFTPCentOSFTP
- ServletFileUpload類上傳檔案Servlet
- 開源OA系統搭建教程:在服務或代理中實現sftp的上傳FTP
- 整合華為雲OBS上傳工具類
- java 上傳 下載檔案工具類Java
- 如何在shell指令碼里使用sftp批次傳送檔案指令碼FTP
- 在java中使用SFTP協議安全的傳輸檔案JavaFTP協議
- idea 配置sftpIdeaFTP
- linux配置sftpLinuxFTP
- Java GenericObjectPool 物件池化技術--SpringBoot sftp 連線池工具類JavaObject物件Spring BootFTP
- SFTP服務搭建FTP
- Windows下批處理分享:透過WinSCP實現SFTP傳輸資料WindowsFTP
- [封裝] 小程式直連 oss 上傳檔案JS類封裝JS
- Node分片上傳和OSS上傳
- Java大檔案上傳、分片上傳、多檔案上傳、斷點續傳、上傳檔案minio、分片上傳minio等解決方案Java斷點
- 前端大檔案上傳/分片上傳前端
- 使用 SSH 和 SFTP 協議FTP協議
- Sftp部署及最佳化FTP
- SFTP是什麼協議FTP協議
- Laravel 圖片上傳到本地和七牛雲類封裝整合Laravel封裝
- vue-resource+iview上傳檔案取消上傳VueView
- 線上直播原始碼,js 檔案上傳 圖片上傳 傳輸速度計算原始碼JS
- [原始碼解析]PyTorch如何實現前向傳播(1) --- 基礎類(上)原始碼PyTorch
- [BUG反饋]上傳EXCEL想做匯入,發現上傳差不多成功被重置上傳Excel
- 學姐,影片上傳不了,我上傳了圖片
- 單個檔案上傳和批量檔案上傳
- sftp常用命令介紹FTP
- linux如何搭建sftp伺服器LinuxFTP伺服器
- centos7配置sftp資訊CentOSFTP
- 檔案上傳
- 上傳圖片
- js實現帶上傳進度的檔案上傳JS