Heim >Backend-Entwicklung >PHP-Tutorial >PHP-FTP-Remote-Upload-Dateiklasse
/**
* Funktion: FTP-Vorgänge (Dateien kopieren, verschieben, löschen/Verzeichnisse erstellen)
* Remote-Upload von Dateien
* Zeit: 2011216
* Autor: Liu Meng
*
*/
class class_ftp
{
public $off; // Operationsstatus zurückgeben (Erfolg/Misserfolg)
public $conn_id ; // FTP-Verbindung
/**
* Methode: FTP-Verbindung
* @FTP_HOST – FTP-Host
* @FTP_PORT – Port
* @FTP_USER – Benutzername
* @FTP_PASS – Passwort
*/
function __construct($FTP_HOST,$FTP_PORT,$FTP_USER,$FTP_PASS)
{
$this->conn_id = @ftp_connect($FTP_HOST,$FTP_PORT) or die("FTP-Server-Verbindung fehlgeschlagen");
@ftp_login($this->conn_id,$FTP_USER,$FTP_PASS) or die("FTP-Server-Anmeldung fehlgeschlagen") ;
@ftp_pasv($this->conn_id,1); // Passive Simulation einschalten
}
/**
* Methode: Datei hochladen
* @path – Lokaler Pfad
* @newpath – Pfad hochladen
* @type – Wenn das Zielverzeichnis nicht existiert, erstellen Sie ein neues
*/
function up_file($path, $ newpath,$type=false)
{
if($type) $this->dir_mkdirs($newpath);off = @ftp_put($this-); > ;conn_id,$newpath,$path,FTP_BINARY);
if(!$this->off) echo „Datei-Upload fehlgeschlagen, bitte überprüfen Sie, ob die Berechtigungen und der Pfad korrekt sind!“; >
/**
* Methode: Dateien verschieben
* @path – Ursprünglicher Pfad
* @newpath – Neuer Pfad
* @type – Wenn das Zielverzeichnis nicht existiert, erstellen Sie ein neues
*/
function move_file($path,$newpath,$type=true)
{
if($type) $this->dir_mkdirs($newpath );
$this->off = @ftp_rename($this->conn_id,$path,$newpath); ";
}
/**
* Methode: Datei kopieren
* Hinweis: Da FTP keinen Kopierbefehl hat, ist der alternative Vorgang dieser Methode: Herunterladen und dann auf einen neuen Pfad hochladen
* @path – ursprünglicher Pfad
* @newpath – Neuer Pfad
* @type – Wenn das Zielverzeichnis nicht existiert, erstellen Sie einen neuen Pfad
*/
function copy_file($path,$newpath,$type=true)
{
$downpath = "c: /tmp.dat";
$this->off = @ftp_get($this->conn_id,$downpath,$path,FTP_BINARY);// Download
if(!$this->off ) echo „Dateikopie fehlgeschlagen, bitte überprüfen Sie, ob die Berechtigungen und der ursprüngliche Pfad korrekt sind! ";
$this->up_file($downpath,$newpath,$type);
}
/**
* Methode: Datei löschen
* @path – Pfad
*/
function del_file($path)
{
$this->off = @ftp_delete($this->conn_id,$path);
if(!$this->off) echo „Dateilöschung fehlgeschlagen, bitte überprüfen Sie die Berechtigungen und Ist der Pfad korrekt? ";
}
/**
* Methode: Verzeichnis generieren
* @path – Pfad
*/
function dir_mkdirs($path)
{ > $path_div = count($path_arr); // Anzahl der Ebenen abrufen
conn_id,$val) == FALSE) > Echo „Wird erstellt fehlgeschlagen, bitte überprüfen Sie, ob die Berechtigungen und Pfade korrekt sind! 🎜> for($i=1;$i<=$path_div;$i ) // Auf Root zurückgreifen
🎜> }
/**
* Methode: FTP-Verbindung schließen
*/
Funktion schließen ()
{
@ftp_close($this->conn_id);
}
?> ('172.15.0.46',21,'zengzhi','aipu2010');
$ftp->up_file($ _FILES['Game_src']['tmp_name'],'/G/'.$_FILES[ 'Game_src']['name']);
$ftp->close();
$src_img= 'http://172.15.0.46/G/'.$_FILES['Game_src'][ 'Name'];