Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Копирование папки с файлами в другую папку
 
 автор: Minus   (03.01.2009 в 11:48)   письмо автору
 
 

Добрый день.
Подскажите пожалуйста функцию копирования папки с файлами в другую папку.
И если можно, то с примером.
заранее спасибо!

  Ответить  
 
 автор: Inviseble_Demon   (03.01.2009 в 11:52)   письмо автору
 
   для: Minus   (03.01.2009 в 11:48)
 

Для *nux или win32 ?

  Ответить  
 
 автор: Minus   (03.01.2009 в 12:59)   письмо автору
 
   для: Inviseble_Demon   (03.01.2009 в 11:52)
 

nux

  Ответить  
 
 автор: Minus   (03.01.2009 в 13:00)   письмо автору
 
   для: Minus   (03.01.2009 в 11:48)
 

Вот вид файла index.php:
<?php
//Подключаем файл конфигурации
include("config.php");
//Подключаем файл с функциями
include("func.php");

//Функция Листинга папок
function listing ($url,$mode) {
//Проверяем, является ли директорией
if (is_dir($url)) {
//Проверяем, была ли открыта директория
if ($dir opendir($url)) {
//Сканируем директорию
while ($file readdir($dir)) {
//Убираем лишние элементы
if ($file != "." && $file != "..") {

//Если папка, то записываем в массив $folders
if(is_dir($url."/".$file)) {
$folders[] = $file;
}
//Если файл, то пишем в массив $files
else {$files[] = $file;}
}
}
}
//Закрываем директорию
closedir($dir);
}
//Если режим =1 то возвращаем массив с папками
if($mode == 1) {return @$folders;}
//Если режим =0 то возвращаем массив с файлами
if($mode == 0) {return @$files;}
}

//Указываем рабочую папку по умолчанию
if(@$_GET['url']) {$url $_GET['url']; }

//Шапка
echo 'Текущая папка: &nbsp;'.$url.'<br/>';

echo 
'<a href=".">[корень]</a> - ';
echo 
'<a href="index.php?url='.updir($url).'">[вверх]</a> - ';
echo 
'<a href="new_dir.php?url='.$url.'">[создать папку]</a> - ';
echo 
'<a href="upload.php?url='.$url.'">[загрузить файл]</a><br/>';
echo 
'<hr/>';

 
//Листинг папок
if(listing($url,1)) {
foreach(
listing($url,1) as $f) {
echo 
'<a href="index.php?url='.$url."/".$f.'">'.$f.'</a> - ';
echo 
'<a href="dell_dir.php?rmdir=1&url='.$url.'&fname='.$f.'">[удалить]</a> | ';
echo 
'<a href="rename.php?url='.$url.'&fname='.$f.'">[переименовать]</a> | ';
echo 
'<a href="copy.php?url='.$url.'&fname='.$f.'">[копировать]</a> | ';
echo 
'<a href="per.php?url='.$url.'&fname='.$f.'">[переместить]</a>';
echo 
'<br/>';
}
}

//Листинг файлов
if(listing($url,0)) {
foreach(
listing($url,0) as $f) {
echo 
$f.' - ';
echo 
'<a href="dell_file.php?url='.$url.'&fname='.$f.'">[удалить]</a> | ';
echo 
'<a href="rename.php?url='.$url.'&fname='.$f.'">[переименовать]</a> | ';
echo 
'<a href="copy.php?url='.$url.'&fname='.$f.'">[копировать]</a> | ';
echo 
'<a href="per.php?url='.$url.'&fname='.$f.'">[переместить]</a>';
echo 
'<br>';
}
}

?>

Как можно из этого кода реализовать копирование дирректорий?

  Ответить  
 
 автор: MikeSVB   (03.01.2009 в 15:13)   письмо автору
 
   для: Minus   (03.01.2009 в 13:00)
 

думаю надо просмотреть что в этом файле

include("func.php");

  Ответить  
 
 автор: Minus   (03.01.2009 в 18:29)   письмо автору
 
   для: MikeSVB   (03.01.2009 в 15:13)
 

Зачем там что-то смотреть? ))
Просто хотел чтобы вы наглядно показали функцию копирования папки с файлами.

  Ответить  
 
 автор: Minus   (05.01.2009 в 00:04)   письмо автору
 
   для: Minus   (03.01.2009 в 11:48)
 

Подскажи кто-нибудь функцию подходящую.
А то второй день мучаюсь. ((

  Ответить  
 
 автор: Николай2357   (05.01.2009 в 01:21)   письмо автору
 
   для: Minus   (05.01.2009 в 00:04)
 

Ну я ничего умнее не придумал, как это:
<?
$old_dir 
"Старый_каталог";
$new_dir "Новый_каталог";

mkdir($new_dir,0755);
$dir opendir($old_dir); 
while(
$file readdir($dir)) 
{
    if(
is_file($old_dir."/".$file))
    {
    
$cont file_get_contents($old_dir."/".$file);
    
file_put_contents($new_dir."/".$file$cont);
    }
}

  Ответить  
 
 автор: Minus   (05.01.2009 в 02:42)   письмо автору
 
   для: Николай2357   (05.01.2009 в 01:21)
 

Такая функция мне немного не подходит.
Спасибо, но уже ненадо.
Только что дописал :)

  Ответить  
 
 автор: Minus   (05.01.2009 в 02:42)   письмо автору
 
   для: Николай2357   (05.01.2009 в 01:21)
 

Такая функция мне немного не подходит.
Спасибо, но уже ненадо.
Только что дописал :)

  Ответить  
 
 автор: Trianon   (05.01.2009 в 01:27)   письмо автору
 
   для: Minus   (05.01.2009 в 00:04)
 

Offtopic.
Выставить в своем профиле форума недействительный адрес электронной почты, а затем посылать посетителям форума личные сообщения - довольно самонадеянно с Вашей стороны.
Сообщения до них может и доходят. Но вот при попытке ответить на такое сообщение, почтовая система возвращает отлуп.

  Ответить  
 
 автор: Minus   (05.01.2009 в 02:48)   письмо автору
 
   для: Trianon   (05.01.2009 в 01:27)
 

Вообще у меня email не был вписан в профиле =)
Сейчас вписал =)

  Ответить  
 
 автор: BART96   (15.01.2016 в 01:27)
 
   для: Minus   (05.01.2009 в 02:48)
 

Если решили проблему, расскажите, что да как. rnЭто поможет следующим людям найти у себя ошибку и пополнить знания

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования