PHP - Создание каталогов и копирование файлов с URL - PullRequest
0 голосов
/ 15 мая 2011

У меня есть массив, заполненный путями, похожими на эти:

library/main/single/list.php
library/article/grid/thumbs.php
library/footer/tiny.php

Эти файлы и папки существуют на моем http://localhost/test/

У меня также есть путь, который http://localhost/new/

Что я хочу сделать

Что мне нужно сделать, это переместить файлы, сохраняя текущую файловую структуру (с неповрежденными каталогами), в новое место.

Результат должен быть таким

Есть ли простой способ сделать это, или мне нужно разрезать каждую строку по ее слешу?

1 Ответ

1 голос
/ 15 мая 2011

Вы можете попробовать:

$from = './test/'; //replace with absolute path if better
$to = './new/';
$paths = array('library/main/single/list.php', 'library/article/grid/thumbs.php', 'library/footer/tiny.php');
$dirs = array();
foreach( $paths as $path ) {
    $pathinfo = pathinfo($to.$path);
    if (!in_array($pathinfo['dirname'], $dirs) && !file_exists($pathinfo['dirname']) && mkdir($pathinfo['dirname'], 0777, true))
        $dirs[] = $pathinfo['dirname'];
    copy($from.$path, $to.$path);
}
...