Перенос файлов

Тема в разделе "PHP", создана пользователем Serega123, 30 ноя 2011.

Модераторы: latteo
  1. Serega123

    Serega123

    Регистр.:
    7 ноя 2006
    Сообщения:
    150
    Симпатии:
    9
    Нужна помощь по такому вопросу:
    Существует к примеру такая структура
    [​IMG]

    Необходимо что бы из папки resourse/twits переносило к примеру 5 текстовых файлов (из 50 к примеру), в папку 1/twity. Скрипт будет находится в папке rp. Подскажите как это лучше реализовать. Просьба не писать ответов типа: через функцию copy, mkdir, opendir и тд. Это я знаю, но реализовать пока не удалось нормально.

    То есть скрипт на данный момент переносит все файлы из папки, а мне надо чтобы определенное количество. Спасибо
     
  2. zzallexx

    zzallexx

    Регистр.:
    11 июн 2008
    Сообщения:
    1.036
    Симпатии:
    699
    если я ничего не перепутал(не тестил) то примерно так :)
    PHP:
    <?php 
    function scan($dir)
    {
            
    $d = array();
            
    $arr opendir($dir);
     
            while(
    $v readdir($arr))
            {
                    if(
    $v == '.' or $v == '..') continue;
                    if(!
    is_dir($dir.DIRECTORY_SEPARATOR.$v)) $d[] = $v;
                    if(
    is_dir($dir.DIRECTORY_SEPARATOR.$v)) $d[$v] = scan($dir.DIRECTORY_SEPARATOR.$v);
       }
     
            return 
    $d;
    }
    $outdir $_SERVER['DOCUMENT_ROOT'].'/rp/1/twity/';
    $indir $_SERVER['DOCUMENT_ROOT'].'/rp/resourse/twits/';  
    $files_array scan($indir); //заносим все файлы в массив 
    $c count($files_array);
    $c_files 5//количество файлов для переноса
    if($c $c_files$count $c_files; else $count $c;
    for(
    $i=0;$i<$count;$i++){
        
    move_uploaded_file($indir.$files_array[$i], $outdir.$files_array[$i]); //или copy
        
    }
    //конец фильма
    соответственно если скажем там разные файлы а нужны только txt надо еще проверку добавить
     
    Serega123 нравится это.
  3. chibit

    chibit Life sucks.

    Регистр.:
    4 дек 2007
    Сообщения:
    420
    Симпатии:
    285
    Есть же функция rename:
    PHP:
    rename('/старая_папка/имя_файла.ext''/новая_папка/имя_файла.ext');
     
  4. Serega123

    Serega123

    Регистр.:
    7 ноя 2006
    Сообщения:
    150
    Симпатии:
    9
    Спасибо! Теперь хоть понятно куда двигаться!