Как скопировать несколько файлов из одной папки в другую в php и удалить их в исходной папке - PullRequest
2 голосов
/ 07 декабря 2009

Как скопировать файлы из одной папки в другую в php и удалить их в исходной папке?

У меня есть две папки $incoming_file_path = /home/xmlcontainer и $processing_file_path = home/process_file. Я перебираю все файлы в $incoming_file_path = home/xmlcontainer и копирую их в $processing_file_path = home/process_file.

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

Код

foreach( glob($incoming_file_path.'/*')as $key => $value ) {
    copy($incoming_file_path.$value,$processing_file_path.$value);
    unlink($incoming_file_path.$value); 
    }

Ответы [ 2 ]

2 голосов
/ 07 декабря 2009

Прежде всего, просто используйте переименовать , если вы хотите переместить файлы.

Ваш цикл должен выглядеть так:

foreach (glob($incoming_file_path . '/*') as $value) {
  rename($value, $processing_file_path . '/' . basename($value))
}

Невозможность прочитать содержимое файла и / или удалить файл часто является простой проблемой с разрешениями. Проверьте, может ли владелец вашего PHP-процесса читать и писать как $incoming_file_path, так и $processing_file_path. Вы можете запустить chmod -R u+rwx (или chmod -R o+rwx) на $incoming_file_path и $processing_file_path.

0 голосов
/ 06 февраля 2017

Используя этот код, вы можете скопировать несколько файлов из одной папки (каталога) в другую для получения дополнительной информации перейдите по этой ссылке http://www.phpkida.com/php-tutorial/copy-multiple-files-from-one-folder-to-another-php/ «

$ srcPath = 'test /'; $ destPath = 'test1 /'; $ srcDir = opendir ($ srcPath); while ($ readFile = readdir ($ srcDir)) { if ($ readFile! = '.' && $ readFile! = '..') { / * эта проверка на самом деле не имеет смысла для меня, вы можете захотеть! file_exists ($ destPath. $ readFile) * / if (! file_exists ($ readFile)) { if (copy ($ srcPath. $ readFile, $ destPath. $ readFile)) { эхо "Копировать файл"; } еще { эхо "Canot Copy file"; } } }} closedir ($ srcDir); ?>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...