ftp类
				
				
					
					
ftp类 
刁馋 计算机技术开发俱乐部 2004-02-26 13 
 
 
ftp类(myftp.php) 
<?php
class myftp {
    var $connector;
    var $getback;
    
    function connect($ftp_server, $uname, $passwd){
    // Baut grundlegende FTP Connection auf
        $this->connector = @ftp_connect($ftp_server);
        $this->login_result = @ftp_login($this->connector, "$uname", "$passwd");
        if ((!$this->connector) ││ (!$this->login_result)) 
        { 
                echo "FTP connection has failed! n";
                echo "Attempted to connect to $ftp_server for user $uname n"; 
                die; 
            } else {
                echo "Connected to $ftp_server, for user $uname n";
            }
    }
    function lastmodtime($value){
        $getback = ftp_mdtm ($this->connector,$value);
        return $getback;
    }
    function changedir($targetdir){
        $getback = ftp_chdir($this->connector, $targetdir);
        return $getback;
    }
    function getdir(){    
        $getback = ftp_pwd($this->connector);
        return $getback;
    }
    
    function get_file_list($directory){    
        $getback = ftp_nlist($this->connector, $directory);
        return $getback;
    }
    
    function get_file($file_to_get, $mode, $mode2){
        $realfile = basename($file_to_get);
        $filename = $realfile;
        
        $checkdir = @$this->changedir($realfile);
        if ($checkdir == TRUE){
            ftp_cdup($this->connector);
            echo "n[DIR] $realfile";
        }else{
            echo "..... ". $realfile ."n";
            $getback = ftp_get($this->connector, $filename, $realfile, $mode);
            if ($mode2){
                $delstatus = ftp_delete($this->connector, $file_to_get);
                if ($delstatus == TRUE){
                    echo "File $realfile on $host deleted n";
                }
            }
        }
        return $getback;
    }
    
    function mode($pasvmode){
        $result = ftp_pasv($this->connector, $pasvmode);
    }
    
    function ftp_bye(){
        ftp_quit($this->connector); 
        return $getback;
    }
}
?>
<?php
flush();
$ftp_ini_datei         = $argv[1];
require ('./ftp_class.php');
require ($ftp_ini_datei);
echo "nCronjob started : ";
echo date("d.m.Y  - H:i:s");
echo "n";
$newftp         = new myftp;
if(!$anonymous){
    $result     = $newftp->connect($host, $user, $password);
}else{
    $result        = $newftp->connect($host, "anonymous", "[email protected]");
}
if (!$result){
    $mydir         = $newftp->changedir($remote_dir);
    $mydir        = $newftp->getdir();
    $merkold_dir    = getcwd();
    chdir($local_dir);
    $mylist     = Array(); 
    $mylist     = $newftp->get_file_list($mydir); 
    
    for ($i=0; $i < sizeof($mylist); $i++)
    {
        $result = $newftp->get_file($mylist[$i], $mymode, $delete);
    }
    $result     = $newftp->ftp_bye();
}else{
    echo "----------------------------------n";
    echo "no connection established :(      n";
    echo "----------------------------------n";
}
echo "nnCronjob stopped : ";
echo date("d.m.Y - H:i:s");
echo "n";
?>