Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Помогите разобраться с многомерными массивами.
 
 автор: Toshik   (23.07.2005 в 04:59)   письмо автору
 
 

Доброго времени суток.
Люди добрые помогите заблудшему чайнику.
Предыстория вкратце такова: мне нужен скрипт на PHP.
Скрипт турнирной таблицы.
Я думал что проще всего это будет сделать многомерным массивом.
Как оказалась не все так просто. Единственная функция для сортировки многомерных массивов которую я нашел это array_multisort().
Но сдается мне это чета не то. Она строки сортирует, а не столбцы, как мне нужно.
Так вот вопрос, нет ли какой-нибудь функции в PHP сортирующей столбцы?
И если нет, то как это вообще сделать?

   
 
 автор: cheops   (23.07.2005 в 10:36)   письмо автору
 
   для: Toshik   (23.07.2005 в 04:59)
 

Хм... а можно чуть подробнее объяснить задачу, может примерчик - что на входе, а что должно получиться на выходе?

   
 
 автор: Artem S.   (23.07.2005 в 11:50)   письмо автору
 
   для: Toshik   (23.07.2005 в 04:59)
 

А поменять строки со столбцами никак нельзя?

Разницы между $a[1]['total'] и $a['total'][1] я особой не вижу.

   
 
 автор: Toshik   (24.07.2005 в 02:39)   письмо автору
 
   для: Artem S.   (23.07.2005 в 11:50)
 

Я СДЕЛАЛ это!
До сиг пор не верю...
Что касается поменять строки со столбцами, то не получится.
Все функции которые есть сортируют только одну строку,
а мне нужно что бы был отсортирован весь массив.
Но все равно спасибо.
А вот как я это сделал:

<?
$kom 
= array(
             
"1" => array(=> "Алания","30","0","0","30","0"),
             
"2" => array(=> "Вега","30","30","0","0","90"),
             
"3" => array(=> "Дезинтегратор","30","15","0","15","45"),
             
"4" => array(=> "Скорпион","30","15","15","0","60"),
             
"5" => array(=> "Тонна","30","0","30","0","30"),
             
"6" => array(=> "Триада","30","0","15","15","15"),
             );
for (
$j=6$j>=1$j--)
    {
    for (
$i=1$i<$j$i++)
        {
        if(
$kom[$i][6]<$kom[$i+1][6])
            {
            
$mem $kom[$i];
            
$kom[$i] = $kom[$i+1];
            
$kom[$i+1] = $mem;
            }
        }
    }
?>

Вроде работает...

   
 
 автор: isset   (24.07.2005 в 03:53)   письмо автору
 
   для: Toshik   (23.07.2005 в 04:59)
 

http://php.net/array

там не одна, там море функций для сортировки, правда не все начинаются с array_

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования