在 Laravel 6.0 操作 SFTP 伺服器

做法

安裝套件。

1
composer require league/flysystem-sftp

修改 config/filesystems.php 檔,新增一個儲存系統:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
return [

// ...

'disks' => [

// ...

'sftp' => [
'driver' => 'sftp',
'host' => env('SFTP_HOST'),
'port' => env('SFTP_PORT'),
'username' => env('SFTP_USERNAME'),
'password' => env('SFTP_PASSWORD'),
],

],

];

修改 .env 檔:

1
2
3
4
SFTP_HOST=
SFTP_PORT=
SFTP_USERNAME=
SFTP_PASSWORD=

取得檔案:

1
\Illuminate\Support\Facades\Storage::disk('sftp')->get('file.csv');

參考資料