Карбюратор Опубликовано 22 июня, 2013 Жалоба Поделиться Опубликовано 22 июня, 2013 Список слов: абзац|отступ абзаца|отступа абзацам|отступам абзацами|отступами абзацах|отступах Нужно чтобы они выглядели вот так: (1, 'абзац|отступ'), (2, 'абзаца|отступа'), (3, 'абзацам|отступам'), (4, 'абзацами|отступами'), (5, 'абзацах|отступах'), Как это организовать? Или через какую программу. Ссылка на комментарий Поделиться на другие сайты Поделиться
LifeOnNet Опубликовано 22 июня, 2013 Жалоба Поделиться Опубликовано 22 июня, 2013 (изменено) На вскидку в голову пришел скрипт для PHP (под windows PHP можно поставить простым установщиком) : <?php$text = file_get_contents("C:\\phptest\\text.txt");$lines = explode("\r\n", $text);$number = 1;foreach ($lines as &$line) {$line ="(".$number.", '".$line."'),";$number++;}$text = implode("\r\n", $lines);file_put_contents("C:\\phptest\\text2.txt", $text);?> Сохранить в файл x.php Во второй строке указывается имя файла с оригинальным текстом. В восьмой имя файла с результатом. При изменении местоположения файла не забыть что \ должен быть заменен на \\ запустить в коммандной строке (под windows) Путь_К_PHP\php.exe путь_к_файлу_php Скрипт не должен вывести ничего если нет ошибок, файл с текстом будет содержать измененный результат. Изменено 22 июня, 2013 пользователем LifeOnNet 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Карбюратор Опубликовано 23 июня, 2013 Автор Жалоба Поделиться Опубликовано 23 июня, 2013 Ошибочка выходит Денвер что ли кривой? Ссылка на комментарий Поделиться на другие сайты Поделиться
Карбюратор Опубликовано 23 июня, 2013 Автор Жалоба Поделиться Опубликовано 23 июня, 2013 (изменено) Не смотря на эти ошибки всё получилось, огромное спасибо вам :thumbup: Большое количество строк скрипт не осилил 1.5млн))) fatal error allowed memory size of xxx bytes exhausted (tried to allocate bytes) Изменено 23 июня, 2013 пользователем Карбюратор Ссылка на комментарий Поделиться на другие сайты Поделиться
LifeOnNet Опубликовано 23 июня, 2013 Жалоба Поделиться Опубликовано 23 июня, 2013 Не смотря на эти ошибки всё получилось, огромное спасибо вам Рад что все удалось. Большое количество строк скрипт не осилил 1.5млн))) Все таки кажется что это проделки денвера :) я на него как-то не подумал :) я обычно ставлю с php.net оригинал, и использую CLI оригинала. Кстати скрипт протестил на вашем коротком примере именно на оригинальном чистом php, работал без донастроек "из коробки", ошибок как у вас не выдавал (и не должен был), но как сказал не ожидал что вы используете денвер, потому сказать пока сложно что там перенастроено. Что касается 1.5 миллиона строк, это аспект, уважаемый, достаточно важный, его надо было бы оговорить :) 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Карбюратор Опубликовано 23 июня, 2013 Автор Жалоба Поделиться Опубликовано 23 июня, 2013 Скачал другой php. Но он тоже отказывается такое большое кол-во строк переделывать. Зато не каких ошибок не выдает. 400 000 строк переделать согласился. Этого думаю достаточно. Ещё раз спасибо вам. Ссылка на комментарий Поделиться на другие сайты Поделиться
LifeOnNet Опубликовано 23 июня, 2013 Жалоба Поделиться Опубликовано 23 июня, 2013 (изменено) Просмотрев на свежую голову, идея состоит в том что файл целиком читается в память, а память для каждого скрипта ограничена. Потому можно добавить вторую строку следующим образом, вместо 16 поставить размер на пару мегабайт больше размера исходного файла с миллионами строк :) : <?phpini_set('memory_limit','16M');$text = file_get_contents("C:\\phptest\\text.txt");$lines = explode("\r\n", $text);$number = 1;foreach ($lines as &$line) { $line ="(".$number.", '".$line."'),";$number++;}$text = implode("\r\n", $lines);file_put_contents("C:\\phptest\\text2.txt", $text);?> Изменено 23 июня, 2013 пользователем LifeOnNet 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Карбюратор Опубликовано 23 июня, 2013 Автор Жалоба Поделиться Опубликовано 23 июня, 2013 Всё получилось))) Только вот не на пару мегабайт пришлось подымать а где то на 900. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти