kopiert eine Datei von einem anderen Server

z.B. statt eine große Datei von einem Server herunter zu laden und dann per FTP wieder hochzuladen (was sehr lange dauern kann) holt sich dieses Script die Datei direkt vom Server.

$erg = copy_from( {source}; {destination} );

Bsp.:
$source = „http://www.domain.de/file.tar.gz“;
$dest = „file.tar.gz“;
copy_from( $source, $dest );

download.php
/*
// holt sich (kopiert) eine Datei von einem anderen HTTP Server
*/
function copy_from( $source, $dest ) {
 
     $ch = curl_init($source);
     $zieldatei = fopen($dest , "w");
     curl_setopt($ch, CURLOPT_FILE, $zieldatei);
     curl_setopt($ch, CURLOPT_TIMEOUT, 3600);
     curl_exec($ch);
     fclose($zieldatei);
 
}

Alternative

wget_download.php
<?
$echo "WGET<br>";
$echo "mit WGET ist es möglich, Programme auf dem Webspace direkt zu installieren, ohne dass";
echo "man erst runter laden und entpacken muss um es anschließend mit FTP hochzuladen.";
echo "Lediglich WGET auf per FTP auf den Webspace kopieren und aufrufen";
echo "Dann hier die URL eingeben wo sich das File befindet";
echo "Der Rest mach WGET, es holt sich das File und entpackt es direkt";
echo "Damit minimiert sich der Zeitaufwand bei großen Files dramatisch.;
 
 
$fileURL = "http://umn.dl.sourceforge.net/sourceforge/phpmyadmin/phpMyAdmin-2.8.0.3.tar.gz";
 
$fileName = "phpMyAdmin-2.8.0.3.tar.gz";
 
$md5Check = "1ca0b652e39010d906e3ea3a02fb9d82";
 
$escape = escapeshellarg($fileURL);
 
exec("wget " . $escape);
 
$unzip = FALSE;
 
if(!empty($md5Check)){
 
    if(md5_file($fileName) == $md5Check)
        $unzip = TRUE;
    else
        echo "Checksummen stimmen nicht überein!";
 
} else {
 
    $unzip = TRUE;
 
}
 
if($unzip) {
 
    $shellBefehl = "tar -xzvf $fileName";
    $shellBefehl = escapeshellcmd($shellBefehl);
 
    exec($shellBefehl,$nu);
 
    print_r($nu);
 
}