Как сгенерировать файлы из списка имен файлов, содержащихся в файле .txt? - PullRequest
0 голосов
/ 16 сентября 2011

У меня есть файл .txt, который включает в себя список из примерно 500 имен файлов. Мне нужно создать фактические файлы на основе списка. Я мог бы использовать либо CMD локально, либо PHP. Который всегда лучший. Каждое имя файла находится на отдельной строке внутри .txt, и нет другой пунктуации или синтаксиса. Допустим, например, что файл .txt называется colors.txt: и КАЖДАЯ ЛИНИЯ внутри текстового файла содержит уникальное имя файла, например:

red.php
blue.php
green.php
orange.php
yellow.php
magenta.php
light-yellow.php
purple.php

Как бы я на самом деле превратил эти имена в списке в файлы? И, что еще лучше, есть ли способ включить контент в файлы по мере их создания? Например, если бы я хотел вставить <?echo "hello world";?> автоматически в каждый новый файл .php при его создании, как я мог это сделать? Спасибо

Ответы [ 2 ]

2 голосов
/ 16 сентября 2011

ПРИМЕЧАНИЕ. Это пакетный скрипт для Windows.

Чтобы создать эти файлы из списка colors.txt и добавить строку эха в каждый файл, используйте следующую петлю FOR /F:

FOR /F "tokens=*" %%A IN (colors.txt) DO (
  (ECHO ^<?echo "hello world";?^>)>"%%A"
)

Обратите внимание, что в команде ECHO вы должны экранировать символы < и > с помощью ^, чтобы превратить их в буквальную строку, иначе пакетный сценарий будет считать их командами перенаправления.

0 голосов
/ 16 сентября 2011

Я не совсем уверен, что вы пытаетесь сделать здесь. Моя интуиция говорит мне, что может быть лучший способ решить более широкую проблему с изображением, с которой вы сталкиваетесь. Тем не менее, вы можете попробовать что-то вроде следующего:

foreach (file('colors.txt') as $filename) {
    file_put_contents($filename, '<?php echo "hello world";');
}

Возможно, вы также захотите проверить правильность имен файлов, чтобы убедиться в их безопасности.

...