Я знаю, этот вопрос довольно старый, но есть и ответы. Я чувствую необходимость показать некоторые новые методы, которые можно использовать для выполнения запрошенной задачи.
В то же время Объекты были представлены с гораздо большим количеством функций и возможностей. Излишне говорить, что другие ответы будут работать так же хорошо.
Но здесь мы используем DirectoryIterator :
$szSrcFolder = 'source_folder';
$szTgtFolder = 'target_folder';
foreach (new DirectoryIterator($szSrcFolder) as $oInfo)
if ($oInfo->isFile())
copy($oInfo->getPathname(), $szTgtFolder . DIRECTORY_SEPARATOR . $oInfo->getBasename());
Помните, что в этом скрипте все пути указаны относительно рабочего каталога самого скрипта.
Я думаю, это самоочевидно, но мы посмотрим. Эти несколько строк будут перебирать все содержимое исходной папки и проверять, является ли это файл, и копировать его в целевую папку, сохраняя исходное имя файла.