[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сортировка данных из файлов
Fen
Парни помогите отсортировать данные.
Пробовал sort(), но выводится на экран Array. Посмотрите, что я не так сделал?
Отсортировать нужно переменную $glasses по убыванию. Помогите кто чем может.


foreach($files as $file)
{
$number++ == 0;
$path_parts = pathinfo($file);
$data = parse_ini_file($file);
$money = $data['Money']+$data['Bank'];
$level = $data['Level'];
$time_game = $data['ConnectedTime'];


//***************************************************
//*****************Расчет очков**********************
//********************начало*************************
//***************************************************

$time_glasses = $data['ConnectedTime']*10;
$money_glasses = $money/10;
settype ($money_glasses, integer);
$skill_glasses = $data['DetSkill']+$data['SexSkill']+$data['BoxSkill']+$data['LawSkill']+$data['MechSkill']+$data['JackSkill']+$data['CarSkill']+$data['NewsSkill']+$data['DrugsSkill']+$data['CookSkill']+$data['FishSkill'];
$shooting_glasses = $data['Kills']-$data['Deaths'];
$glasses = $time_glasses+$money_glasses+$skill_glasses+$shooting_glasses;
//*****************Сортировка начало*****************
$glass = array($glasses);
sort($glass);
for($i=0; $i < count($glass); $i++)
{
//*****************Сортировка конец******************
//***************************************************
//*****************Расчет очков**********************
//********************конец**************************
//***************************************************

echo "<tbody>";
echo "<tr>";

echo "<th scope='row' >$number</th>";

echo "<td align='left'>";
echo "<img align='left' src='gta/flags/BY.png' width='16' height='12' alt='' /> ";
echo $path_parts['filename'];
echo "</td>";
echo "<td>$level</td>";//уровень
echo "<td>$glass[$i]</td>";//очки
echo "<td>$time_game</td>";//время игры
echo "<td>$money</td>";//деньги

echo "<td>$skill_glasses</td>";//Навыки
echo "<td>$shooting_glasses</td>";//Убийства-смерти
echo "</tr>";
}

}






Спустя 25 минут, 53 секунды (15.02.2012 - 17:01) Winston написал(а):

Спустя 26 минут, 11 секунд (15.02.2012 - 17:27) Fen написал(а):
Цитата (Winston @ 15.02.2012 - 14:01)
http://phpforum.ru/index.php?showtopic=0&v...dpost&p=1716723

Все равно бред получается. Подтолкните меня трахец.

Спустя 14 минут, 2 секунды (15.02.2012 - 17:41) walerus написал(а):
В каком виде находятся данные в $glasses, приведи пример

Спустя 1 минута, 52 секунды (15.02.2012 - 17:43) Fen написал(а):
Цитата (walerus @ 15.02.2012 - 14:41)
В каком виде находятся данные в $glasses, приведи пример

Целые числа.

Спустя 1 час, 12 минут, 56 секунд (15.02.2012 - 18:56) walerus написал(а):
Можно поспользоваться CTRL + C, а потом CTRL + V, и вставить сюда ??
Меня не интересовало, целые числа там или разбитые, мне интересно там массив?, строка?, многомерный массив, ассоциативный etc.

Спустя 2 часа, 39 минут, 14 секунд (15.02.2012 - 21:35) Fen написал(а):
Цитата (walerus @ 15.02.2012 - 15:56)
Можно поспользоваться CTRL + C, а потом CTRL + V, и вставить сюда ??
Меня не интересовало, целые числа там или разбитые, мне интересно там массив?, строка?, многомерный массив, ассоциативный etc.

Вот
$glasses = $time_glasses+$money_glasses+$skill_glasses+$shooting_glasses;

Спустя 6 минут, 4 секунды (15.02.2012 - 21:41) m4a1fox написал(а):
Fen
Выскажусь, а то walerus ща кричать будет..... :)
А что вот в этих переменных лежит-находится? Тип данных?
$time_glasses+$money_glasses+$skill_glasses+$shooting_glasses

Спустя 1 минута, 12 секунд (15.02.2012 - 21:42) Игорь_Vasinsky написал(а):
ну целые числа biggrin.gif biggrin.gif biggrin.gif


Спустя 2 минуты, 9 секунд (15.02.2012 - 21:44) m4a1fox написал(а):
Может в сторону multisort глянуть?

Спустя 49 минут, 41 секунда (15.02.2012 - 22:34) Placido написал(а):
Не могу понять о чем разговор.
Раз в $time_glasses и иже с ними лежат целые числа,
$glasses = $time_glasses+$money_glasses+$skill_glasses+$shooting_glasses;

значит, и в $glasses лежит INT.
Поэтому вот это бессмысленно:
$glass = array($glasses);
sort($glass);

Что там сортировать? Единственный элемент массива?

----

А "glasses" улыбнули. :D

В качестве ликбеза:
glasses - очки, которые носят на носу;
glass - стекло, стакан.
Очки в вашем случае - points.

Спустя 42 минуты, 15 секунд (15.02.2012 - 23:16) Fen написал(а):
Цитата (Placido @ 15.02.2012 - 19:34)
Не могу понять о чем разговор.
Раз в $time_glasses и иже с ними лежат целые числа,
$glasses = $time_glasses+$money_glasses+$skill_glasses+$shooting_glasses;

значит, и в $glasses лежит INT.
Поэтому вот это бессмысленно:
$glass = array($glasses);
sort($glass);

Что там сортировать? Единственный элемент массива?

----

А "glasses" улыбнули. :D

В качестве ликбеза:
glasses - очки, которые носят на носу;
glass - стекло, стакан.
Очки в вашем случае - points.

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

Спустя 31 минута, 46 секунд (15.02.2012 - 23:48) Placido написал(а):
Непонятно. $glasses ничего не выводит. Там лежит одно значение (одно единственное число) - сумма $time_glasses + $money_glasses + $skill_glasses + $shooting_glasses.

Спустя 7 часов, 28 минут, 50 секунд (16.02.2012 - 07:17) Fen написал(а):
Цитата (Placido @ 15.02.2012 - 20:48)
Непонятно. $glasses ничего не выводит. Там лежит одно значение (одно единственное число) - сумма $time_glasses + $money_glasses + $skill_glasses + $shooting_glasses.

В этих переменных лежат значения с файлов *.ini находящихся в папке, эти значения выводятся в столбец:

<table>
<tr>
<td>

$glasses
</td>
</tr>
</table>



Они будут выводится примерно так:
213465
134214
243241
411432

Вот их мне и надо отсортировать.

Пример переменной:
$time_glasses = $data['ConnectedTime']*10;

$data['ConnectedTime'] - это данные из файла.

Спустя 15 минут, 52 секунды (16.02.2012 - 07:33) Игорь_Vasinsky написал(а):
давайка снова - что у вас на выходе и что нужно отсортировать.

Спустя 8 часов, 48 минут, 29 секунд (16.02.2012 - 16:21) walerus написал(а):
Это LoL :D

Fen - можно еще раз, последний... надеюсь.
есть переменная с твоих слов имя переменной - $glasses, выводит кол-во очков для каждого игрока в столбец, следовательно !!! - это должен быть массив

судя по этому
$glasses = $time_glasses+$money_glasses+$skill_glasses+$shooting_glasses;


так массив не получится...

Теперь что я от тебя прошу.

сделай print_r($glasses) или var_dump($glasses), как тебе больше нравится и пришлю сюда наконец.

А попутно и
print_r($time_glasses)
print_r($money_glasses)
print_r($skill_glasses)
print_r($shooting_glasses)






Спустя 5 часов, 4 минуты, 40 секунд (16.02.2012 - 21:26) Fen написал(а):
Цитата (walerus @ 16.02.2012 - 13:21)
Это LoL :D

Fen - можно еще раз, последний... надеюсь.
есть переменная с твоих слов имя переменной - $glasses, выводит кол-во очков для каждого игрока в столбец, следовательно !!! - это должен быть массив

судя по этому
$glasses = $time_glasses+$money_glasses+$skill_glasses+$shooting_glasses;


так массив не получится...

Теперь что я от тебя прошу.

сделай print_r($glasses) или var_dump($glasses), как тебе больше нравится и пришлю сюда наконец.

А попутно и
print_r($time_glasses)
print_r($money_glasses)
print_r($skill_glasses)
print_r($shooting_glasses)

При print_r($glasses); выводит следующее:
5065100149100961291501001501501001501501501509959915010000159150

Я так понел это он вывел данные из всех файлов в одну строку.

Спустя 5 минут, 8 секунд (16.02.2012 - 21:31) Игорь_Vasinsky написал(а):
Цитата
print_r($glasses)

я так понял это начальный кусок твоей строки, хоть бы перенос сделал чтоль...

и теперь вопрос - как ты хочешь сортировать строку и главное для чего? ты считаешь сумму и потом результат выставляешь от 0 до 9 ? это что то оригинальное.

Спустя 6 минут (16.02.2012 - 21:37) Fen написал(а):
Цитата (Игорь_Vasinsky @ 16.02.2012 - 18:31)
Цитата
print_r($glasses)

я так понял это начальный кусок твоей строки, хоть бы перенос сделал чтоль...

и теперь вопрос - как ты хочешь сортировать строку и главное для чего? ты считаешь сумму и потом результат выставляешь от 0 до 9 ? это что то оригинальное.

Вот перенос сделал:
5065
100149
10096129
150
100
150
150
100
150
150
150
150
99599
150
10000159
150

Спустя 4 часа, 14 минут, 58 секунд (17.02.2012 - 01:52) walerus написал(а):
Цитата
print_r($time_glasses)
print_r($money_glasses)
print_r($skill_glasses)
print_r($shooting_glasses)


Кому писал непонятно...

Fen с print_r($glasses); - разобрались, там не массив, а строка. Теперь давай поймем почему там строка.

Цитата
Вот перенос сделал:
тут не медиумы ), поверь ), поясни как ты сделал перенос? какой командой? или как, тут КОД нужно видеть, лично я не могу догадаться как ты сделал в строке переносы...

Прошу тебя еще раз, ПОЖАЛУЙСТА, перед этой $glasses = $time_glasses+$money_glasses+$skill_glasses+$shooting_glasses;, строкой

в своем скрипте, напиши
print_r($time_glasses);
print_r($money_glasses);
print_r($skill_glasses);
print_r($shooting_glasses);
die( 'STOP' );


и пришлю сюда, пожалуйста,то, что выдаст скрипт, твои цифры никто не украдет и не запишет, не переживай.
Быстрый ответ:

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