Yii2-Gftp (Удаленное подключение к FTP серверу)

Yii2-Gftp (Удаленное подключение к FTP серверу)

hguenot/yii2-gftp

Семенов Александр

Установить Демо

Он поддерживает протокол FTP и FTP через SSL протокол.

Семенов Александр

Ftp is a FTP extension for [YII 2 Framework](http://www.yiiframework.com).

@разработчик решения

Время публикации: пятница, 3 июля 2015 г. (2 года назад)

Добавил: Семенов Александр

Категория: Прочее

Актуальная версия: 2.1.3
09 мая 2016 г., 15:36:01 (год назад)

Packagist: hguenot/yii2-gftp

: https://github.com/hguenot/yii2-gftp

: 14103 (За месяц: 969)

Тип: Компонент


Описание от «Семенов Александр»

Он поддерживает протокол FTP и FTP через SSL протокол.

В этом решение есть виджет и компонент.

Latest Stable Version Total Downloads License

GFtp

GFtp is a FTP extension for YII 2 Framework.

It contains 2 main component :

  • \gftp\FtpComponent : A Yii component used to manage FTP connection and navigation (encapsulates PHP ftp method).
  • \gftp\FtpWidget : A widget which can be used to display FTP folder content and allow FTP server browsing.

It supports FTP protocol and FTP over SSL protocol. SFTP support is provider by Yii2-gsftp extension.

Installation

The preferred way to install this extension is through composer.

Either run

php composer.phar require --prefer-dist hguenot/yii2-gftp "*"

or add

"hguenot/yii2-gftp": "*"

to the require section of your composer.json file.

Usage

Here is a basic usage of GFtp extension.

  • Create an FTP application component (in your Web config file)
return [
    // [...]
    'components'=>[
        // [...]
        'ftp' => [
            'connectionString' => 'ftp://user:pass@host:21',
            'driverOptions' =>  [
                'timeout' => 120,
                'passive' => false
            ]
        ]
    ],
    // [...]
];
  • You can user either a connection string where protocol could be ftp or ftps or directly set protocol, user, pass, host and port properties :
return [
    // [...]
    'components'=>[
        // [...]
        'ftp' => [
            'class' => '\gftp\FtpComponent',
            'driverOptions' =>  [
                'class' => '\gftp\drivers\SftpProtocol',
                'user' => 'me@somewhere.otrb',
                'pass' => 'PassW0rd',
                'host' => 'ftp.somewhere.otrb',
                'port' => 2121,
                'timeout' => 120,
                'passive' => false
            ]
        ]
    ],
    // [...]
];
  • Use component
$files = $gftp->ls();
$gftp->chdir('images');

More complete example :

public function actionExample() { 
    $remote_file = '/data/users.txt'; 
    $local_file = '/tmp/users.load'; 
    $mode = 'FTP_ASCII'; 
    $asynchronous = false; 
    $file = Yii::$app->ftp->get($remote_file, $local_file, $mode, $asynchronous); 
    // [...]
} 
  • Display ftp content in a Widget :
use gftp\FtpWidget;
echo FtpWidget::widget();
  • If no FTP(S) connection is passed to the widget, it needs an application component named 'ftp'. But you can pass an FtpComponent directly :
use \gftp\FtpWidget;
echo FtpWidget::widget([
    'ftp' => \Yii::$app->get('otrb')
]);

or

use \gftp\FtpWidget;
use \gftp\FtpComponent;

echo FtpWidget::widget([
    'ftp' => new FtpComponent([
            'driverOptions' =>  [
                'class' => '\gftp\drivers\SftpProtocol',
                'user' => 'me@somewhere.otrb',
                'pass' => 'PassW0rd',
                'host' => 'ftp.somewhere.otrb',
                'port' => 2121,
                'timeout' => 120,
                'passive' => false
            ]
    ]);
]);

Все комментарии (0)
Нет комментариев

dev-master — 19 мая 2017 г., 7:50:00 (6 месяцев назад)

2.1.3 — 09 мая 2016 г., 15:36:01 (год назад)

V2.1.2 — 11 дек. 2015 г., 16:56:57 (2 года назад)

V2.1.1 — 02 нояб. 2015 г., 23:54:40 (2 года назад)

2.1 — 03 авг. 2015 г., 10:48:45 (2 года назад)

2.0.1 — 15 июля 2015 г., 23:04:50 (2 года назад)

2.0 — 19 июня 2015 г., 22:32:30 (2 года назад)

1.0 — 14 июня 2015 г., 9:10:54 (2 года назад)

Стандартная установка:

Добавьте composer.json файл вашего проекта:

"hguenot/yii2-gftp": "*"

Запустите обновление зависимостей


Читать про обнолвение SkeekS CMS