PHP: Verzeichnis rekursiv kopieren

PHP bietet leider keine Möglichkeit um ein Verzeichnis inkl. aller Unterordner an einen anderen Ort zu kopieren. Hierfür kann die folgende Methode verwendet werden:

Code:

function copyDir($sSourcePath, $sTargetPath)
{  
    if (is_dir($sSourcePath) && !is_dir($sTargetPath))
    {
        mkdir($sTargetPath, 0755);
        foreach ($oIterator = new \RecursiveIteratorIterator(
                new \RecursiveDirectoryIterator($sSourcePath, \RecursiveDirectoryIterator::SKIP_DOTS),
                \RecursiveIteratorIterator::SELF_FIRST) as $oItem)
        {
            if ($oItem->isDir())
                mkdir($sTargetPath.DIRECTORY_SEPARATOR.$oIterator->getSubPathName());
            else
                copy($oItem, $sTargetPath.DIRECTORY_SEPARATOR.$oIterator->getSubPathName());
        }
        return true;
    }
    return false;
}

PHP: Verzeichnis rekursiv kopieren weiterlesen

PHP: Einfacher FTP-Upload mit der Klasse FTPConnection

Mit der Klasse FTPConnection lassen sich einzelne Dateien, mehrere Dateien oder komplette Verzeichnisse inkl. deren Unterverzeichnisse auf einen FTP-Server laden. Über den Konstruktor werden die Verbindungsparameter des FTP-Servers definiert. Um die Dateien oder Verzeichnisse auf einen Server zu laden, können die drei Methoden uploadFile, uploadFiles oder uploadDirectory verwendet werden.

1. uploadFile – Einzelne Datei hochladen:
Mit der Methode „uploadFile“ können einzelne Dateien hochgeladen werden.

$oFTP = new FTPConnection('sklueh.de', 'username', 'password');
var_dump($oFTP->uploadFile('testfile1.txt', 'testfile1.txt')); //true

2. uploadFiles – Mehrere Dateien hochladen:
Die Methode „uploadFiles“ läd alle definierten Dateien in das gewünschte Verzeichnis auf dem FTP-Server.

$oFTP = new FTPConnection('sklueh.de', 'username', 'password');
$aFiles = array('testfile1.txt', 'testfile2.txt', 'testfile3.txt');
var_dump($oFTP->uploadFiles($aFiles, '/my_dir/sub_dir')); //true

3. uploadDirectory – Komplettes Verzeichnis inkl. aller Unterordner hochladen:
Die Methode „uploadDirectory“ läd ein komplettes Verzeichnis inklusive aller Unterverzeichnisse in das definierte Zielverzeichnis auf dem FTP-Server.

$oFTP = new FTPConnection('sklueh.de', 'username', 'password');
var_dump($oFTP->uploadDirectory('example-dir1', '/')); //true

PHP: Einfacher FTP-Upload mit der Klasse FTPConnection weiterlesen