isidrogg / ftp-bundle
A Symfony2 Bundle to wrap the PHP ftp extension functionality in a more classy way.
Installs: 69
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 10
Type:symfony-bundle
Requires
- php: >=5.3.2
This package is not auto-updated.
Last update: 2025-05-20 11:31:31 UTC
README
#FtpBundle
A Symfony2 Bundle to wrap the PHP ftp extension functionality in a more "classy" way.
##Installation
Step 1: Install the bundle
For Symfony 2.0:
Add the following entries to the deps in the root of your project file:
[IjankiFtpBundle]
git=git://github.com/isidrogg/FtpBundle.git
target=bundles/isidrogg/Bundle/FtpBundle
Now, run the vendors script to download the bundle:
$ php bin/vendors install
Then you need to add the Ijanki namespace to your autoloader:
<?php // app/autoload.php $loader->registerNamespaces(array( // ... 'Ijanki' => __DIR__.'/../vendor/bundles', ));
For Symfony >= 2.1
Add the following dependency to your composer.json file:
"require": {
# ..
"isidrogg/ftp-bundle": "*"
# ..
}
Step 2: Enable the bundle
Finally, enable the bundle in the kernel:
<?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new Isidrogg\Bundle\FtpBundle\IsidroggFtpBundle(), ); }
Usage
<?php use Isidrogg\Bundle\FtpBundle\Exception\FtpException; public function indexAction() { //... try { $ftp = $this->container->get('isidrogg_ftp'); $ftp->connect($host); $ftp->login($username, $password); $ftp->put($destination_file, $source_file, FTP_BINARY); } catch (FtpException $e) { echo 'Error: ', $e->getMessage(); } //... }
All php ftp functions are wrapped in Ftp object:
For example:
ftp_mkdir becomes $ftp->mkdir or
ftp_put becomes $ftp->put
with the same arguments except the first one (resource $ftp_stream).
Check Ftp.php for other added methods.
Credits
Inspired by https://github.com/dg/ftp-php