[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как вывести файл построчно, сортируя по подстрокам
Kuzma92
Здравствуйте, уважаемые специалисты. Прошу помощи.

Есть файл, его содержание, например:
0*45457897*
1*63665988*
1*74133597*
0*0*
0*02588560*
1*0*
1*65487000*
и т.д.

Подскажите, пожалуйста, как вывести файл построчно с конца в таком порядке (?):
- сначала строки, у которых вторая подстрока строки содержит 0
- дальше строки, у которых первая подстрока строки содержит 0
- и все оставшиеся строки
Kuzma92
Извиняюсь, не совсем верно сформулировал вопрос. Уточнение:

Подскажите, пожалуйста, как вывести файл построчно с конца в таком порядке (?):
- сначала строки, у которых вторая подстрока строки = "0"
- дальше строки, у которых первая подстрока строки = "0"
- и все оставшиеся строки

То есть результат ожидается таким:
1*0*
0*0*
0*02588560*
0*45457897*
1*65487000*
1*74133597*
1*63665988*
sg.com
Цитата (Kuzma92 @ 22.08.2025 - 22:58)
Подскажите, пожалуйста, как вывести файл построчно с конца в таком порядке (?):
- сначала строки, у которых вторая подстрока строки = "0"
- дальше строки, у которых первая подстрока строки = "0"
- и все оставшиеся строки


ну, так думаю, сделать проход по массиву из файла (если он есть такой массив) и сформировать три массива которые можно объединить в нужном порядке. По идее, если файл переписать в json формат, то вопрос решается более просто.
don.bidon
Цитата (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.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.