note 105868 modified in book.ftp by danbrown
| From: | danbrown@php.net | Date: | Wed, 21 Sep 2011 16:45:02 +0000 |
| Subject: | note 105868 modified in book.ftp by danbrown | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-183328@lists.php.net to get a copy of this message | ||
For those who dont want to deal with handling the connection once created, here is a simple class
that allows you to call any ftp function as if it were an extended method. It automatically puts
the ftp connection into the first argument slot (as all ftp functions require).
This code is php 5.3+
<?php
class ftp{
public $conn;
public function __construct($url){
$this->conn = ftp_connect($url);
}
public function __call($func,$a){
if(strstr($func,'ftp_') !== false && function_exists($func)){
array_unshift($a,$this->conn);
return call_user_func_array($func,$a);
}else{
// replace with your own error handler.
die("$func is not a valid FTP function");
}
}
}
// Example
$ftp = new ftp('ftp.example.com');
$ftp->ftp_login('username','password');
var_dump($ftp->ftp_nlist());
?>
--was--
For those who dont want to deal with handling the connection once created, here is a simple class
that allows you to call any ftp function as if it were an extended method. It automatically puts
the ftp connection into the first argument slot (as all ftp functions require).
This code is php 5.3+
<?php
class ftp{
public $conn;
public function __construct($url){
$this->conn = ftp_connect($url);
}
public function __call($func,$a){
if(strstr($func,'ftp_') !== false && function_exists($func)){
array_unshift($a,$this->conn);
return call_user_func_array($func,$a);
}else{
// replace with your own error handler.
die("$func is not a valid FTP function");
}
}
}
// Example
$ftp = new ftp('ftp.myserver.com');
$ftp->ftp_login('username','password');
var_dump($ftp->ftp_nlist());
?>
http://php.net/manual/en/book.ftp.php