Kopieren eines Verzeichnisses von einem Ort zum anderen

Kopieren eines Verzeichnisses von einem Ort zum anderen

Problem

Sie möchten ein ganzes Verzeichnis an einen anderen Ort kopieren.

Sie möchten es rekursiv kopieren, alle Dateien und Unterverzeichnisse an den neuen Standort.

Lösung

Benutze die Datei :: CopyDirectory () Methode.

$ success = file :: copyDirectory ($ socodeir, $ destinationDir);

Die Methode kehrt true zurück, wenn alle Dateien und Unterverzeichnisse erfolgreich kopiert werden.

Wenn das Zielverzeichnis nicht existiert, wird es erstellt. Es wird nach Bedarf rekursiv erstellt.

Diskussion

Es gibt ein optionales drittes Argument.

Intern, die Datei :: CopyDirectory () Die Methode verwendet die Dateisystem -System -Systemer -Klasse von PHP, um die Dateien und Verzeichnisse zum Kopieren zu scannen. Der Dateisystemer ist Flags als zweite Parameter. Sie können ein drittes Argument an übergeben Datei :: CopyDirectory () das an den Dateisystemerer -Konstruktor weitergegeben wird. Standardmäßig, Datei :: CopyDirectory () Verwendet die konstante Skip_dots.

Dies bedeutet, dass Dateien, die mit Punkten beginnen, nicht kopiert werden.

Achten Sie bei dieser dritten Option vorsichtig. Der Datei :: CopyDirectory () Die Methode verhalten sich möglicherweise nicht wie erwartet.