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());
?>
FTP
- Introdução
- Instalação/Configuração
- Constantes pré-definidas
- Exemplos
- FTP Funções
- ftp_alloc — Aloca espaço para um arquivo a ser enviado para o servidor (uploaded)
- ftp_cdup — Muda para o diretório acima
- ftp_chdir — Muda o diretório atual em um servidor FTP
- ftp_chmod — Estabelece as permissões de um arquivo via FTP
- ftp_close — Fecha uma conexão FTP
- ftp_connect — Abre uma conexão FTP
- ftp_delete — Exclui um arquivo no servidor FTP
- ftp_exec — Solicita a execução de um comando no servidor FTP
- ftp_fget — Copia um arquivo do servidor FTP e salva em um arquivo aberto
- ftp_fput — Envia um arquivo aberto para um servidor php
- ftp_get_option — Obtém várias opções em tempo de execução da conexão FTP atual
- ftp_get — Copia um arquivo do servidor FTP
- ftp_login — Realiza o login em uma conexão FTP
- ftp_mdtm — Retorna a hora da ultima modificação no arquivo indicado
- ftp_mkdir — Cria um diretório
- ftp_nb_continue — Continua a receber/enviar um arquivo (sem bloquear)
- ftp_nb_fget — Obtém um arquivo de um servidor FTP e escreve-o para um arquivo aberto(sem bloquear)
- ftp_nb_fput — Grava um arquivo a partir de um arquivo aberto no servidor FTP (sem bloquear)
- ftp_nb_get — Obtém um arquivo do servidor FTP e escreve-o em um arquivo local (sem bloquear)
- ftp_nb_put — Grava um arquivo no servidor FTP (sem bloquear)
- ftp_nlist — Retorna a lista dos arquivos em um dado diretório
- ftp_pasv — Muda o modo passivo em on(ligado) ou off(desligado)
- ftp_put — Envia um arquivo para o servidor FTP
- ftp_pwd — Retorna o nome do diretório atual
- ftp_quit — Sinônimo de ftp_close
- ftp_raw — Envia um comando arbritário para o servidor FTP
- ftp_rawlist — Retorna uma lista detalhada dos arquivos em um diretório
- ftp_rename — Renomeia um arquivo ou diretório no servidor FTP
- ftp_rmdir — Remove um diretório
- ftp_set_option — Define opções diversas em tempo de execução
- ftp_site — Envia o comando SITE para o servidor
- ftp_size — Retorna o tamanho de um dado arquivo
- ftp_ssl_connect — Abre uma conexão SSL-FTP segura
- ftp_systype — Retorna o identificador do tipo do sistema do servidor FTP remoto
tendrid at gmail dot com
21-Sep-2011 09:15
