achrafsoltani / sftp-service-provider
SFTP Service Provider for Silex
v2.0.0
2016-06-15 12:35 UTC
Requires
- php: >=5.3.0
- ext-ssh2: *
- monolog/monolog: *
- silex/silex: ~2.0
This package is not auto-updated.
Last update: 2024-11-09 18:22:11 UTC
README
A Simple SFTP wrapper for Silex
Features
- Easy setup.
- Files : List, Upload, Download, Rename, Delete.
- Folders: List, Mkdir, Rename, Delete.
Requirements
- PHP 5.3+
- ext-ssh2
- monolog/monolog (through the MonologServiceProvider)
Dependencies
// Installing php-ssh2 $ sudo apt-get install libssh2-php // checking if all is good $ php -m |grep ssh2
Installation
$ composer require achrafsoltani/sftp-service-provider
Setup
require_once __DIR__.'/vendor/autoload.php';
use Silex\Application;
use AchrafSoltani\Provider\SftpServiceProvider;
use Silex\Provider\MonologServiceProvider;
$app = new Application();
// Monolog
$app->register(new Silex\Provider\MonologServiceProvider(), array(
'monolog.logfile' => __DIR__.'/logs/development.log',
));
// SFTP
$app->register(new SftpServiceProvider(), array(
'sftp.options' => array(
'hostname' => 'domain.tld', // or IP address
'username' => 'root',
'password' => 'your_ssh_password',
'port' => '22' // optional
)
));
// Usage
$app->run();
Usage
- Example 1 : Listing files in a directory
$dirs = $app['sftp']->list_files('/home/user/');
var_dump($dirs);
- Example 2 : Downloading a File
$app['sftp']->download('/home/user/source_file.ext', '/home/user/path/to/destination/downloaded.ext');