|
|
|
| Такая проблема.
Вот, уже третий день мучаюсь над написанием такой функции.
Функция copy() может копировать только файлы, но мне нужно копировать каталог. В PHP такой функции я не нашел(может быть плохо искал). Пытался сам написать свою функцию, но возникли проблемы...
Может кто-то раньше делал что-то подобное? Или может готовая есть...
Помогите, пожалуйста.
Спасибо. | |
|
|
|
|
|
|
|
для: Blaster
(15.06.2008 в 12:56)
| | Да... никто мне помогать не хочет)
Но уже и не надо. Сам написал функцию.
Кому интересно, вот код:
<?php
# Функция копирует все папки и файлы из каталога $from в каталог $to
function copydir($from,$to)
{
if(is_file($from))
{
if(!copy($from,"$to/".basename($from)))
{
echo "Ошибка копирования из $from/ в $to/".basename($from)."<br>\n";
}
else
{
echo "Успешно скопирован $from/ в $to/".basename($from)."<br>\n";
}
}
else if(is_dir($from))
{
$dir = opendir($from);
while(($file = readdir($dir)))
{
if($file!="." && $file!="..")
{
if(!file_exists($to))
{
echo "$to не существует.<br>\n";
if(!mkdir("$to"))
echo "<b>Ошибка</b> создания каталога $to.<br>\n";
else
echo "Создаем каталог $to.<br>\n";
}
else
echo "$to существует.<br>\n";
if(is_file("$from/$file"))
{
echo "$from/$file - файл.<br>\n";
if(!copy("$from/$file","$to/".basename("$from/$file")))
{
echo "<b>Ошибка</b> копирования из $from/$file в $to/".basename("$from/$file")."<br>\n";
}
else
{
echo "Копируем $from/$file в $to/".basename("$from/$file")."<br>\n";
}
}
else if(is_dir("$from/$file"))
{
echo "$from/$file - каталог<br>\n";
copydir("$from/$file","$to/$file");
}
}
}
closedir($dir);
}
}
|
| |
|
|
|