laravel上傳文件FTP驅動配置


FTP驅動配置

Laravel 的文件系統集成了 FTP 操作,不過,框架默認的配置文件 filesystems.php 並沒有提供示例配置。如果你需要配置一個FTP文件系統,可以使用以下示例配置:

'ftp' => [
    'driver'   => 'ftp',
    'host'     => 'ftp.example.com',
    'username' => 'your-username',
    'password' => 'your-password',

    // Optional FTP Settings...
    // 'port'     => 21,
    // 'root'     => '',
    // 'passive'  => true,
    // 'ssl'      => true,
    // 'timeout'  => 30,
],

 

上面提供的是通過操作config/filesystems.php文件的ftp驅動。

 

第二種是FTP驅動配置,是對laravel進行FTP擴展:

1.打開laravel框架 composer.json 文件   在 "require" 中添加  "anchu/ftp": "~2.0" ,運行composer update ,

2.在config/app.php以下位置添加服務提供商: Anchu\Ftp\FtpServiceProvider::class,

3.運行 php artisan vendor:publish  生產ftp.php 文件  在這個文件修改ftp鏈接配置

4.控制器 直接調用 ftp 使用類   例如 :use FTP;

使用方法 :

$ status = FTP :: connection() - > makeDir( ' directory-name '); 詳細請看下文



5.config/ftp.php文件配置第一個ftp賬號:
'connections' => array(
'connection1' => array(
'host' => '196.168.1.108', //此地方需要改成ftp站點綁定的域名
'port' => 21, //改成自己的
'username' => 'miniapp', //改成自己的
'password' => '123456', //改成自己的
'passive' => false, //改成自己的
),
),

6.控制器中調用FTP方法:
Ftp::connection('connection1')->makeDir("123")
此方法會在FTP賬號下面生成123文件夾

支持的方法

getDirListing($ directory,$ parameters)

返回給定目錄中的文件列表

  • $directory:要列出的目錄。默認值:.
  • $parameters:可選參數前綴與目錄。例如:-la。默認值:null

getDirListingDetailed($ directory)

返回給定目錄中的文件列表,作為具有以下關鍵字的關聯數組:權限,數字,用戶,組,大小,月份,日期和時間

  • $directory:要列出的目錄。默認值:.

makeDir($ directory)

在FTP服務器上創建指定的目錄。

  • $directory:將要創建的目錄的名稱。

changeDir($ directory)

更改FTP服務器上的當前目錄。

  • $directory:目標目錄。

uploadFile($ fileFrom,$ fileTo,$ mode)

將本地文件上傳到FTP服務器。

  • $fileFrom:本地文件路徑。
  • $fileTo:遠程文件路徑。
  • $mode:傳輸模式。必須是FTP_ASCIIFTP_BINARY。如果沒有指定模式,自動模式分辨率將被完成。

downloadFile($ fileFrom,$ fileTo,$ mode)

從FTP服務器下載文件

  • $fileFrom:遠程文件路徑。
  • $fileTo:本地文件路徑(如果文件已存在,將被覆蓋)或我們存儲數據的打開的文件指針。
  • $mode:傳輸模式。必須是FTP_ASCIIFTP_BINARY。如果沒有指定模式,自動模式分辨率將被完成。

readFile($ fileFrom)

與該downloadFile()方法相同,除了它將遠程文件下載到PHP輸出緩沖區並返回。

  • $fileFrom:遠程文件路徑。

提升()

對父目錄的更改。

權限($ mode,$ filename)

設置文件的權限。

  • $mode:新的權限,以八進制值給出。
  • $filename:遠程文件。

delete($ path)

從FTP服務器刪除由路徑指定的文件。

  • $path:要刪除的文件。

currentDir()

返回當前目錄名

重命名($ oldName,$ newName)

重命名FTP服務器上的文件或目錄。

  • $oldName:舊文件/目錄名稱。
  • $newName:新名字

removeDir($ directory,$ recursive)

刪除目錄

  • $directory:要刪除的目錄。這必須是空目錄的絕對路徑或相對路徑。
  • $recursive:遞歸刪除文件夾。默認值:false。

truncateDir($ directory)

截斷目錄

  • $directory:要截斷的目錄。這必須是目錄的絕對路徑或相對路徑。

size($ remoteFile)

以字節為單位返回給定文件的大小。 Note: Not all servers support this feature.

  • $remoteFile:遠程文件。

time($ remoteFile)

返回給定文件的最后修改時間 Note: Not all servers support this feature.

  • $remoteFile:遠程文件。
 
        

原文地址:http://blog.csdn.net/hg421/article/details/66971290

 

第二種ftp的優秀文章:

https://laravel-china.org/topics/269/as-a-project-driven-rookie-share-two-package-laravel-ftp-remote-ftp-and-intervention-image-image-processing

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM