Kuzma92
22.08.2025 - 22:04
Здравствуйте, уважаемые специалисты. Прошу помощи.
Есть файл, его содержание, например:
0*45457897*
1*63665988*
1*74133597*
0*0*
0*02588560*
1*0*
1*65487000*
и т.д.
Подскажите, пожалуйста, как вывести файл построчно с конца в таком порядке (?):
- сначала строки, у которых вторая подстрока строки содержит 0
- дальше строки, у которых первая подстрока строки содержит 0
- и все оставшиеся строки
Kuzma92
22.08.2025 - 22:58
Извиняюсь, не совсем верно сформулировал вопрос. Уточнение:
Подскажите, пожалуйста, как вывести файл построчно с конца в таком порядке (?):
- сначала строки, у которых вторая подстрока строки = "0"
- дальше строки, у которых первая подстрока строки = "0"
- и все оставшиеся строки
То есть результат ожидается таким:
1*0*
0*0*
0*02588560*
0*45457897*
1*65487000*
1*74133597*
1*63665988*
sg.com
24.08.2025 - 20:49
| Цитата (Kuzma92 @ 22.08.2025 - 22:58) |
Подскажите, пожалуйста, как вывести файл построчно с конца в таком порядке (?): - сначала строки, у которых вторая подстрока строки = "0" - дальше строки, у которых первая подстрока строки = "0" - и все оставшиеся строки |
ну, так думаю, сделать проход по массиву из файла (если он есть такой массив) и сформировать три массива которые можно объединить в нужном порядке. По идее, если файл переписать в json формат, то вопрос решается более просто.
don.bidon
25.08.2025 - 13:23
| Цитата (sg.com @ 24.08.2025 - 20:49) |
| [По идее, если файл переписать в json формат, то вопрос решается более просто. |
Зачем тут JSON, особенно если размер файла превышает в несколько раз свободную оперативную память?
если файл маленький --
https://www.php.net/manual/en/function.file.php +
https://www.php.net/manual/en/function.array-filter.php, иначе потоковое чтение и частичное заполнение массива поступившими данными, потом опять
https://www.php.net/manual/en/function.array-filter.php.
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.