Автор Тема: скачать целиком директорию...  (Прочитано 4737 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн nagash

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 341
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.nagash.org
скачать целиком директорию...
« : 22 Января 2003, 21:53:55 »
хочу сделать вот что...
конекчусь по ФТП (все данные известны)
и скачиваю целиком директорию (с поддиректориями)
вопросец...
ftp_nlist - возвращает только файлы? или папочки тоже...
а как сделать чтобы выкачать бесконечное количество вложеных папочек...
это же надо каждую просканировать... а если их там куча...?

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
скачать целиком директорию...
« Ответ #1 : 22 Января 2003, 23:53:17 »
я бы через exec запустил системный ftp
или попробуй http://www.v-wijk.net/
« Последнее редактирование: 22 Января 2003, 23:59:59 от RomikChef »

Оффлайн Stas

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 304
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.isfuture.com
скачать целиком директорию...
« Ответ #2 : 23 Января 2003, 00:01:28 »
tebe skoree togda chto-to tipa ftpcopy nado ispolzovat\'...

http://www.ohse.de/uwe/ftpcopy/ftpcopy-0.6.0.tar.gz

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
скачать целиком директорию...
« Ответ #3 : 23 Января 2003, 01:04:54 »
ну и как вариант - pear :: net :: ftp
у него есть метод
getRecursive ( $remote_path, $local_path, $overwrite = false, $mode = null )

Судя по комментариям в классе это то что нужно (на практике я его не использовал)
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн nagash

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 341
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.nagash.org
скачать целиком директорию...
« Ответ #4 : 23 Января 2003, 02:09:12 »
всё крута... всё посмотрел...
но было бы неплохо написать эту функцию самому...
потому что есть задумки в другом месте использовать... но полубому принцип тот же останется... просканивать на неопределённую глубину папки...
надо написать функцию которая всё это делала бы...
есть идея... создавать многомернейшим массив... конечным результатом которого например будет
$folder[1][1][file]
$folder[2][file]
$folder[2][file]
$folder[3][1]
$folder[3][2][file]
примерно такого плана... =) но я никак не соображу как это сделать...

Оффлайн nagash

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 341
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.nagash.org
скачать целиком директорию...
« Ответ #5 : 23 Января 2003, 02:45:13 »
немогу закончить... помогите пожалуйста...
var $folder;
function scan($papka) {
сканирует папку и попутно засовывает в массив названия
$folder[$i] = $nazvanie;
проверяет.... если то что она засунула папка тогда
scan($papka);
всё закончила...
}
впринципе принцип очень простой и хороший... вот только одно но.. как увеличивать вложенность элементов переменной $folder
чтобы следующий раз когда она вызовет функцию скан не заменялись элементы а дальше записывались $folder[1][$i]....
м...?

Оффлайн Maniac

  • Ума нет - считай коллега
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 844
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
скачать целиком директорию...
« Ответ #6 : 23 Января 2003, 20:04:28 »
nagash
Не надо выеживаться. Используй стандартный алгоритм для рекурсивного спуска. Примерно такой (пишу для локальной папки. Для FTP сам переделаешь):

function scan($folder)
{
	
Как-то там обрабатываем папку;
//Спускаемся
	
$dir=opendir("./$folder");
	
while (
$file=readdir($dir))
	
	
if (
$file!=\'.\'&&$file!=\'..\'&&is_dir($file))
	
	
	
scan("$folder/$file");
}

scan(\'.\');
TANSTAAFL

Оффлайн nagash

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 341
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.nagash.org
скачать целиком директорию...
« Ответ #7 : 23 Января 2003, 23:00:09 »
так я тоже самое придумал =) только вот эту вот мелочь пропустил (тыркнул пальцем в центр монитора)
=)

Оффлайн Maniac

  • Ума нет - считай коллега
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 844
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
скачать целиком директорию...
« Ответ #8 : 23 Января 2003, 23:06:01 »
nagash
Ну, ладно-ладно. В следующий раз дядя Маньяк не будет писать столь тривиального кода. А хочешь ту же саму задачу, но со стеком? Тоже, кстати, классический алгоритм
TANSTAAFL

Оффлайн nagash

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 341
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.nagash.org
скачать целиком директорию...
« Ответ #9 : 23 Января 2003, 23:14:45 »
хочу конечно!

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28