Master-X
Регистрация
|
Вход
Форум
|
Новости
|
Статьи
Главная
»
Форум
»
Программинг, Скрипты, Софт, Сервисы
»
Тема:
Сортировка дампа (PHP)
Новая тема
Ответить
цитата
24/10/14 в 18:49
Lexikon
есть дамп
id1|text1|0.15
id2|text2|0.1
id3|text3|0.5
id4|text4|0.1
id5|text5|0.2
id6|text6|0
нужно отсортировать этот дамп по последним значениям в строке, по убыванию или возрастанию не имеет значения.
Х.з. как решить, вроде ничего сложного, но в тоже время проблема.
Подскажите, кому не сложно на PHP
Спасибо!
Последний раз редактировалось: Lexikon (
24/10/14 в 18:54
), всего редактировалось 1 раз
цитата
24/10/14 в 18:54
MOBIUS
1. меняешь в блокноте | на ;
2. переименовываешь расширение файла в csv
3. сортируешь в Excel
4. меняешь в блокноте ; на |
Можно, конечно замену не делать, но так, ИМХО, проще тебе объяснить.
Если что непонятно - стучи в личку.
цитата
24/10/14 в 18:59
condom007
В командной строке на любом серваке можешь сделать
sort --field-separator='|' --key=3 /path/to/sourceFile > /path/to/destinationFile
/path/to/sourceFile замени на путь к файлу с начальными значениями
/path/to/destinationFile заменит на путь, куда сохранить результат
А с помощью пыхи то же самое:
<?
exec("sort --field-separator='|' --key=3 /path/to/sourceFile > /path/to/destinationFile");
цитата
24/10/14 в 19:17
Lexikon
нашел выход через arsort()
цитата
24/10/14 в 19:46
Guun
$filename = 'file.txt'; //path to file
$src_arr = file($filename, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach ($src_arr as $value) {
$value = trim($value);
$parts_arr = explode('|', $value);
$num = count($parts_arr)-1;
$res_arr[$parts_arr[$num]] = $value;
}
ksort($res_arr);
$fp = fopen($filename, 'w');
foreach ($res_arr as $value) fwrite($fp, "{$value}\n");
fclose($fp);
И chmod 777 на file.txt не забыть поставить
Новая тема
Ответить
Эта страница в полной версии