test/new/
які містять всі файли з test/old
. Задача дублювання виникла при генерації великої кількості шаблонів для статей.
/* Генерація 10 дублікатів фолдера */
[PHP]
<?php
$old='test/old';
$start=1;
$end=intval($start)+9;
for($i=$start;$i<=$end;$i++){
$new='test/new/'.$i;
if (!file_exists($new)) mkdir($new);
$handle = opendir($old);
while (($item = readdir($handle)) !== false) {
if ($item == '.' || $item == '..') continue;
$_source = $old . '/' . $item;
$_dest = $new . '/' . $item;
if (is_file($_source)) copy($_source, $_dest);
if (is_dir($_source)) copydir($_source, $_dest);
}
closedir($handle);
?>
/* Оформлення у вигляді функції */
[PHP]
<?php
// Формуємо технічну адресу доступу до поточного файлу
$MAGIC_DIR = __DIR__ ;
// Генеруємо дублікат файлів
$data_article = date("y.m.d H.m.s");
dabble($data_article, $MAGIC_DIR);
function dabble($data_article, $MAGIC_DIR) {
$old = $MAGIC_DIR . "/article-sample";
$start = 1;
$end = intval($start);
for($i = $start;$i<=$end;$i++){
$new = $MAGIC_DIR . "/article " . $data_article;
if (!file_exists($new)) mkdir($new);
$handle = opendir($old);
while (($item = readdir($handle)) !== false) {
if ($item == '.' || $item == '..') continue;
$_source = $old . '/' . $item;
$_dest = $new . '/' . $item;
if (is_file($_source)) copy($_source, $_dest);
if (is_dir($_source)) copydir($_source, $_dest);
}
closedir($handle);
}
}
?>