Я хочу переименовать 420 файлов с помощью цикла, но я не знаю как.
В своем проекте я создал 420 изображений с помощью fopen ();
fopen($meal->imagepath, "w");
Так как fopen ищет существующий файл, а у меня его нет, функция создала мои 420 файлов через цикл, и они имеют правильные имена. Проблема в том, что эти изображения не имеют таких свойств, как высота, ширина или цвет фона.
Поэтому я хотел бы создать один файл вручную нарисовать и скопировать этот файл 420 раз, а затем переименовать их, ссылаясь на текстовый файл с моими 420 правильными именами. Я думаю, что это должно быть возможно, но как?
Спасибо вам
Так как это звучит как разовая вещь, я опускаю обработку ошибок
PHP напрямую копирует файлы
foreach( file('names.txt', FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES) as $target)
copy('source.png', $target);
}
смотрите также: http://docs.php.net/copy , http://docs.php.net/function.file
php создает командный файл:
file_put_contents('rename.sh', '#!/bin/bash');
foreach( file('names.txt', FILE_IGNORE_NEW_LINES|FILE_SKIP_EMPTY_LINES) as $target)
file_put_contents('rename.sh', "cp source.png $target\r\n", FILE_APPEND);
}
смотрите также: http://docs.php.net/file_put_contents
только shell / xargs:
<source.txt xargs -L 1 cp source.png
смотрите также: https://en.wikipedia.org/wiki/Xargs
Powershell:
gc .\source.txt | %{ copy source.png $_ }
смотрите также: Использование командлета Get-Content
foreach (glob("*.txt") as $filename) {
file_put_contents('new_name',file_get_contents('path/to/file/'.$filename)); }