Новичок
Покинул форум
Сообщений всего: 17
Дата рег-ции: Окт. 2018
Помог: 0 раз(а)
|
Вот вариант решения задачи:
PHP:
скопировать код в буфер обмена
function copy_folder($d1, $d2, $upd = true, $force = true) { $d2 = mkdir_safe( $d2, $force ); if (!$d2) {fs_log("!!fail $d2"); return;} while ( false !== ( $entry = $d->read() ) ) { if ( $entry != '.' && $entry != '..' ) copy_folder( "$d1/$entry", "$d2/$entry", $upd, $force ); } $d->close(); } else { $ok = copy_safe( $d1, $d2, $upd ); $ok = ($ok) ? "ok-- " : " -- "; fs_log("{$ok}$d1"); } } //function copy_folder function mkdir_safe( $dir, $force ) { if (is_dir($dir)) return $dir; else if (!$force) return false; } return (mkdir($dir, 0777 , true)) ? $dir : false; } //function mkdir_safe function copy_safe ($f1, $f2, $upd) { if ($time2 >= $time1 && $upd) return false; } if ($ok) touch($f2, $time1); return $ok; } //function copy_safe function fs_log($str) { $log = fopen("./fs_log.txt", "a"); $time = date("Y-m-d H:i:s"); fwrite($log, "$str ($time)\n"); }
Что скажите?
И в коде не понятно где имя исходника и копии: $d1, $d2 - уточните пожалуйста.
|