За последние 24 часа нас посетили 21898 программистов и 1073 робота. Сейчас ищут 695 программистов ...

сортировка многомерных массивов по определенному полю

Тема в разделе "Прочие вопросы по PHP", создана пользователем Евгений Педан, 5 дек 2007.

  1. Евгений Педан

    Евгений Педан Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    5
    Симпатии:
    0
    необходимо отсортировать массивы в порядке:

    где большее количество элементов

    например

    [блог] должен стоять самым первым массивом т.к. количество элеметов у него самое большое, а дальше в порядке убывания например [рисунок]

    как это сделать ума не приложу, или просто туплю ?

    вот исходный массив

    Код (Text):
    1.  
    2.  
    3. Array
    4. (
    5.     [рисунок] => Array
    6.         (
    7.             [0] => Array
    8.                 (
    9.                     [ID] => 12610
    10.                     [TIMESTAMP_X] => 09.11.2007 14:11:25
    11.                     [IBLOCK_ID] => 51
    12.                     [PROPERTY_TAGS_VALUE] => рисунок, схематическое изображение, набросок, эскиз, развитие
    13.                     [PROPERTY_TAGS_VALUE_ID] => 53177
    14.                     [~ID] => 12610
    15.                     [~TIMESTAMP_X] => 09.11.2007 14:11:25
    16.                     [~IBLOCK_ID] => 51
    17.                     [~PROPERTY_TAGS_VALUE] => рисунок, схематическое изображение, набросок, эскиз, развитие
    18.                     [~PROPERTY_TAGS_VALUE_ID] => 53177
    19.                     [LIST_PAGE_URL] =>
    20.                 )
    21.  
    22.             [cnt] => 1
    23.         )
    24.  
    25.     [схематическое изображение] => Array
    26.         (
    27.             [0] => Array
    28.                 (
    29.                     [ID] => 12610
    30.                     [TIMESTAMP_X] => 09.11.2007 14:11:25
    31.                     [IBLOCK_ID] => 51
    32.                     [PROPERTY_TAGS_VALUE] => рисунок, схематическое изображение, набросок, эскиз, развитие
    33.                     [PROPERTY_TAGS_VALUE_ID] => 53177
    34.                     [~ID] => 12610
    35.                     [~TIMESTAMP_X] => 09.11.2007 14:11:25
    36.                     [~IBLOCK_ID] => 51
    37.                     [~PROPERTY_TAGS_VALUE] => рисунок, схематическое изображение, набросок, эскиз, развитие
    38.                     [~PROPERTY_TAGS_VALUE_ID] => 53177
    39.                     [LIST_PAGE_URL] =>
    40.                 )
    41.  
    42.             [cnt] => 1
    43.         )
    44. [блог] => Array
    45.         (
    46.             [0] => Array
    47.                 (
    48.                     [ID] => 12560
    49.                     [TIMESTAMP_X] => 06.11.2007 14:06:44
    50.                     [IBLOCK_ID] => 51
    51.                     [PROPERTY_TAGS_VALUE] => Блог, Nokia, N800, планшетный ПК
    52.                     [PROPERTY_TAGS_VALUE_ID] => 53024
    53.                     [~ID] => 12560
    54.                     [~TIMESTAMP_X] => 06.11.2007 14:06:44
    55.                     [~IBLOCK_ID] => 51
    56.                     [~PROPERTY_TAGS_VALUE] => Блог, Nokia, N800, планшетный ПК
    57.                     [~PROPERTY_TAGS_VALUE_ID] => 53024
    58.                     [LIST_PAGE_URL] =>
    59.                 )
    60.  
    61.             [cnt] => 20
    62.             [1] => Array
    63.                 (
    64.                     [ID] => 12539
    65.                     [TIMESTAMP_X] => 02.11.2007 16:05:35
    66.                     [IBLOCK_ID] => 51
    67.                     [PROPERTY_TAGS_VALUE] => Блог, Коммуникатор, Glofiish, X600
    68.                     [PROPERTY_TAGS_VALUE_ID] => 52881
    69.                     [~ID] => 12539
    70.                     [~TIMESTAMP_X] => 02.11.2007 16:05:35
    71.                     [~IBLOCK_ID] => 51
    72.                     [~PROPERTY_TAGS_VALUE] => Блог, Коммуникатор, Glofiish, X600
    73.                     [~PROPERTY_TAGS_VALUE_ID] => 52881
    74.                     [LIST_PAGE_URL] =>
    75.                 )
    76.  
    77.             [2] => Array
    78.                 (
    79.                     [ID] => 12523
    80.                     [TIMESTAMP_X] => 02.11.2007 15:59:03
    81.                     [IBLOCK_ID] => 51
    82.                     [PROPERTY_TAGS_VALUE] => Блог, ICQ, GPRS, Beeline
    83.                     [PROPERTY_TAGS_VALUE_ID] => 52850
    84.                     [~ID] => 12523
    85.                     [~TIMESTAMP_X] => 02.11.2007 15:59:03
    86.                     [~IBLOCK_ID] => 51
    87.                     [~PROPERTY_TAGS_VALUE] => Блог, ICQ, GPRS, Beeline
    88.                     [~PROPERTY_TAGS_VALUE_ID] => 52850
    89.                     [LIST_PAGE_URL] =>
    90.                 )
    91.  
    92.             [3] => Array
    93.                 (
    94.                     [ID] => 12531
    95.                     [TIMESTAMP_X] => 02.11.2007 13:06:05
    96.                     [IBLOCK_ID] => 51
    97.                     [PROPERTY_TAGS_VALUE] => Блог, Америка, Лас Вегас
    98.                     [PROPERTY_TAGS_VALUE_ID] => 52867
    99.                     [~ID] => 12531
    100.                     [~TIMESTAMP_X] => 02.11.2007 13:06:05
    101.                     [~IBLOCK_ID] => 51
    102.                     [~PROPERTY_TAGS_VALUE] => Блог, Америка, Лас Вегас
    103.                     [~PROPERTY_TAGS_VALUE_ID] => 52867
    104.                     [LIST_PAGE_URL] =>
    105.                 )
    106.         )
    107. )
     
  2. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург
  3. Евгений Педан

    Евгений Педан Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    5
    Симпатии:
    0
    это конечно всё замечательно но, как это сделать по ключу [cnt], как не пытался выводится ошибка
     
  4. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург
    PHP:
    1. <?
    2. function myCmp($a, $b) {
    3.     if ($a['cnt'] === $b['cnt']) return 0;
    4.     return $a['cnt'] < $b['cnt'] ? 1 : -1;
    5. }
    6.  
    7. uasort($array, 'myCmp');
     
    Dimon2x нравится это.
  5. Евгений Педан

    Евгений Педан Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    5
    Симпатии:
    0
    Код (Text):
    1.  
    2. array (
    3.   'рисунок' =>
    4.   array (
    5.     0 =>
    6.     array (
    7.       'ID' => '12610',
    8.       'TIMESTAMP_X' => '09.11.2007 14:11:25',
    9.       'IBLOCK_ID' => '51',
    10.       'PROPERTY_TAGS_VALUE' => 'рисунок, схематическое изображение, набросок, эскиз, развитие',
    11.       'PROPERTY_TAGS_VALUE_ID' => '53177',
    12.       '~ID' => '12610',
    13.       '~TIMESTAMP_X' => '09.11.2007 14:11:25',
    14.       '~IBLOCK_ID' => '51',
    15.       '~PROPERTY_TAGS_VALUE' => 'рисунок, схематическое изображение, набросок, эскиз, развитие',
    16.       '~PROPERTY_TAGS_VALUE_ID' => '53177',
    17.       'LIST_PAGE_URL' => '',
    18.     ),
    19.     'cnt' => 1,
    20.   ),
    21.   'схематическое изображение' =>
    22.   array (
    23.     0 =>
    24.     array (
    25.       'ID' => '12610',
    26.       'TIMESTAMP_X' => '09.11.2007 14:11:25',
    27.       'IBLOCK_ID' => '51',
    28.       'PROPERTY_TAGS_VALUE' => 'рисунок, схематическое изображение, набросок, эскиз, развитие',
    29.       'PROPERTY_TAGS_VALUE_ID' => '53177',
    30.       '~ID' => '12610',
    31.       '~TIMESTAMP_X' => '09.11.2007 14:11:25',
    32.       '~IBLOCK_ID' => '51',
    33.       '~PROPERTY_TAGS_VALUE' => 'рисунок, схематическое изображение, набросок, эскиз, развитие',
    34.       '~PROPERTY_TAGS_VALUE_ID' => '53177',
    35.       'LIST_PAGE_URL' => '',
    36.     ),
    37.     'cnt' => 1,
    38.   ),
    39.   'набросок' =>
    40.   array (
    41.     0 =>
    42.     array (
    43.       'ID' => '12610',
    44.       'TIMESTAMP_X' => '09.11.2007 14:11:25',
    45.       'IBLOCK_ID' => '51',
    46.       'PROPERTY_TAGS_VALUE' => 'рисунок, схематическое изображение, набросок, эскиз, развитие',
    47.       'PROPERTY_TAGS_VALUE_ID' => '53177',
    48.       '~ID' => '12610',
    49.       '~TIMESTAMP_X' => '09.11.2007 14:11:25',
    50.       '~IBLOCK_ID' => '51',
    51.       '~PROPERTY_TAGS_VALUE' => 'рисунок, схематическое изображение, набросок, эскиз, развитие',
    52.       '~PROPERTY_TAGS_VALUE_ID' => '53177',
    53.       'LIST_PAGE_URL' => '',
    54.     ),
    55.     'cnt' => 1,
    56.   ),
    57.   'эскиз' =>
    58.   array (
    59.     0 =>
    60.     array (
    61.       'ID' => '12610',
    62.       'TIMESTAMP_X' => '09.11.2007 14:11:25',
    63.       'IBLOCK_ID' => '51',
    64.       'PROPERTY_TAGS_VALUE' => 'рисунок, схематическое изображение, набросок, эскиз, развитие',
    65.       'PROPERTY_TAGS_VALUE_ID' => '53177',
    66.       '~ID' => '12610',
    67.       '~TIMESTAMP_X' => '09.11.2007 14:11:25',
    68.       '~IBLOCK_ID' => '51',
    69.       '~PROPERTY_TAGS_VALUE' => 'рисунок, схематическое изображение, набросок, эскиз, развитие',
    70.       '~PROPERTY_TAGS_VALUE_ID' => '53177',
    71.       'LIST_PAGE_URL' => '',
    72.     ),
    73.     'cnt' => 1,
    74.   ),
    75.   'развитие' =>
    76.   array (
    77.     0 =>
    78.     array (
    79.       'ID' => '12610',
    80.       'TIMESTAMP_X' => '09.11.2007 14:11:25',
    81.       'IBLOCK_ID' => '51',
    82.       'PROPERTY_TAGS_VALUE' => 'рисунок, схематическое изображение, набросок, эскиз, развитие',
    83.       'PROPERTY_TAGS_VALUE_ID' => '53177',
    84.       '~ID' => '12610',
    85.       '~TIMESTAMP_X' => '09.11.2007 14:11:25',
    86.       '~IBLOCK_ID' => '51',
    87.       '~PROPERTY_TAGS_VALUE' => 'рисунок, схематическое изображение, набросок, эскиз, развитие',
    88.       '~PROPERTY_TAGS_VALUE_ID' => '53177',
    89.       'LIST_PAGE_URL' => '',
    90.     ),
    91.     'cnt' => 1,
    92.   ),
    93.   'блог' =>
    94.   array (
    95.     0 =>
    96.     array (
    97.       'ID' => '12560',
    98.       'TIMESTAMP_X' => '06.11.2007 14:06:44',
    99.       'IBLOCK_ID' => '51',
    100.       'PROPERTY_TAGS_VALUE' => 'Блог, Nokia, N800, планшетный ПК',
    101.       'PROPERTY_TAGS_VALUE_ID' => '53024',
    102.       '~ID' => '12560',
    103.       '~TIMESTAMP_X' => '06.11.2007 14:06:44',
    104.       '~IBLOCK_ID' => '51',
    105.       '~PROPERTY_TAGS_VALUE' => 'Блог, Nokia, N800, планшетный ПК',
    106.       '~PROPERTY_TAGS_VALUE_ID' => '53024',
    107.       'LIST_PAGE_URL' => '',
    108.     ),
    109.     'cnt' => 20,
    110.     1 =>
    111.     array (
    112.       'ID' => '12539',
    113.       'TIMESTAMP_X' => '02.11.2007 16:05:35',
    114.       'IBLOCK_ID' => '51',
    115.       'PROPERTY_TAGS_VALUE' => 'Блог, Коммуникатор, Glofiish, X600',
    116.       'PROPERTY_TAGS_VALUE_ID' => '52881',
    117.       '~ID' => '12539',
    118.       '~TIMESTAMP_X' => '02.11.2007 16:05:35',
    119.       '~IBLOCK_ID' => '51',
    120.       '~PROPERTY_TAGS_VALUE' => 'Блог, Коммуникатор, Glofiish, X600',
    121.       '~PROPERTY_TAGS_VALUE_ID' => '52881',
    122.       'LIST_PAGE_URL' => '',
    123.     ),
    124.     2 =>
    125.     array (
    126.       'ID' => '12523',
    127.       'TIMESTAMP_X' => '02.11.2007 15:59:03',
    128.       'IBLOCK_ID' => '51',
    129.       'PROPERTY_TAGS_VALUE' => 'Блог, ICQ, GPRS, Beeline',
    130.       'PROPERTY_TAGS_VALUE_ID' => '52850',
    131.       '~ID' => '12523',
    132.       '~TIMESTAMP_X' => '02.11.2007 15:59:03',
    133.       '~IBLOCK_ID' => '51',
    134.       '~PROPERTY_TAGS_VALUE' => 'Блог, ICQ, GPRS, Beeline',
    135.       '~PROPERTY_TAGS_VALUE_ID' => '52850',
    136.       'LIST_PAGE_URL' => '',
    137.     ),
    138.     3 =>
    139.     array (
    140.       'ID' => '12531',
    141.       'TIMESTAMP_X' => '02.11.2007 13:06:05',
    142.       'IBLOCK_ID' => '51',
    143.       'PROPERTY_TAGS_VALUE' => 'Блог, Америка, Лас Вегас',
    144.       'PROPERTY_TAGS_VALUE_ID' => '52867',
    145.       '~ID' => '12531',
    146.       '~TIMESTAMP_X' => '02.11.2007 13:06:05',
    147.       '~IBLOCK_ID' => '51',
    148.       '~PROPERTY_TAGS_VALUE' => 'Блог, Америка, Лас Вегас',
    149.       '~PROPERTY_TAGS_VALUE_ID' => '52867',
    150.       'LIST_PAGE_URL' => '',
    151.     ),
    152.     4 =>
    153.     array (
    154.       'ID' => '12467',
    155.       'TIMESTAMP_X' => '01.11.2007 17:12:00',
    156.       'IBLOCK_ID' => '51',
    157.       'PROPERTY_TAGS_VALUE' => 'Блог, MyGuide 3100, GPS, Навигатор',
    158.       'PROPERTY_TAGS_VALUE_ID' => '52727',
    159.       '~ID' => '12467',
    160.       '~TIMESTAMP_X' => '01.11.2007 17:12:00',
    161.       '~IBLOCK_ID' => '51',
    162.       '~PROPERTY_TAGS_VALUE' => 'Блог, MyGuide 3100, GPS, Навигатор',
    163.       '~PROPERTY_TAGS_VALUE_ID' => '52727',
    164.       'LIST_PAGE_URL' => '',
    165.     ),
    166.     5 =>
    167.     array (
    168.       'ID' => '12469',
    169.       'TIMESTAMP_X' => '01.11.2007 17:11:23',
    170.       'IBLOCK_ID' => '51',
    171.       'PROPERTY_TAGS_VALUE' => 'Блог, MyGuide 4200, GPS, Навигатор',
    172.       'PROPERTY_TAGS_VALUE_ID' => '52729',
    173.       '~ID' => '12469',
    174.       '~TIMESTAMP_X' => '01.11.2007 17:11:23',
    175.       '~IBLOCK_ID' => '51',
    176.       '~PROPERTY_TAGS_VALUE' => 'Блог, MyGuide 4200, GPS, Навигатор',
    177.       '~PROPERTY_TAGS_VALUE_ID' => '52729',
    178.       'LIST_PAGE_URL' => '',
    179.     ),
    180.     6 =>
    181.     array (
    182.       'ID' => '12508',
    183.       'TIMESTAMP_X' => '01.11.2007 14:27:03',
    184.       'IBLOCK_ID' => '51',
    185.       'PROPERTY_TAGS_VALUE' => 'Блог, Америка, Лас Вегас',
    186.       'PROPERTY_TAGS_VALUE_ID' => '52815',
    187.       '~ID' => '12508',
    188.       '~TIMESTAMP_X' => '01.11.2007 14:27:03',
    189.       '~IBLOCK_ID' => '51',
    190.       '~PROPERTY_TAGS_VALUE' => 'Блог, Америка, Лас Вегас',
    191.       '~PROPERTY_TAGS_VALUE_ID' => '52815',
    192.       'LIST_PAGE_URL' => '',
    193.     ),
    194.     7 =>
    195.     array (
    196.       'ID' => '12457',
    197.       'TIMESTAMP_X' => '01.11.2007 14:19:10',
    198.       'IBLOCK_ID' => '51',
    199.       'PROPERTY_TAGS_VALUE' => 'Блог, Коммуникатор, CDMA, GSM, GPS, AnyDATA, ASP-500GA',
    200.       'PROPERTY_TAGS_VALUE_ID' => '52696',
    201.       '~ID' => '12457',
    202.       '~TIMESTAMP_X' => '01.11.2007 14:19:10',
    203.       '~IBLOCK_ID' => '51',
    204.       '~PROPERTY_TAGS_VALUE' => 'Блог, Коммуникатор, CDMA, GSM, GPS, AnyDATA, ASP-500GA',
    205.       '~PROPERTY_TAGS_VALUE_ID' => '52696',
    206.       'LIST_PAGE_URL' => '',
    207.     ),
    208.     8 =>
    209.     array (
    210.       'ID' => '12503',
    211.       'TIMESTAMP_X' => '01.11.2007 11:53:04',
    212.       'IBLOCK_ID' => '51',
    213.       'PROPERTY_TAGS_VALUE' => 'Блог, Коммуникатор, RoverPC, Q5, QWERTY',
    214.       'PROPERTY_TAGS_VALUE_ID' => '52810',
    215.       '~ID' => '12503',
    216.       '~TIMESTAMP_X' => '01.11.2007 11:53:04',
    217.       '~IBLOCK_ID' => '51',
    218.       '~PROPERTY_TAGS_VALUE' => 'Блог, Коммуникатор, RoverPC, Q5, QWERTY',
    219.       '~PROPERTY_TAGS_VALUE_ID' => '52810',
    220.       'LIST_PAGE_URL' => '',
    221.     ),
    222.     9 =>
    223.     array (
    224.       'ID' => '12475',
    225.       'TIMESTAMP_X' => '31.10.2007 10:10:28',
    226.       'IBLOCK_ID' => '51',
    227.       'PROPERTY_TAGS_VALUE' => 'Блог, Встроенная фотокамера, Портативное устройство, Мобильный телефон, Коммуникатор, Смартфон, Необходимость',
    228.       'PROPERTY_TAGS_VALUE_ID' => '52735',
    229.       '~ID' => '12475',
    230.       '~TIMESTAMP_X' => '31.10.2007 10:10:28',
    231.       '~IBLOCK_ID' => '51',
    232.       '~PROPERTY_TAGS_VALUE' => 'Блог, Встроенная фотокамера, Портативное устройство, Мобильный телефон, Коммуникатор, Смартфон, Необходимость',
    233.       '~PROPERTY_TAGS_VALUE_ID' => '52735',
    234.       'LIST_PAGE_URL' => '',
    235.     ),
    236.     10 =>
    237.     array (
    238.       'ID' => '12463',
    239.       'TIMESTAMP_X' => '30.10.2007 11:08:40',
    240.       'IBLOCK_ID' => '51',
    241.       'PROPERTY_TAGS_VALUE' => 'Блог,Спам',
    242.       'PROPERTY_TAGS_VALUE_ID' => '52702',
    243.       '~ID' => '12463',
    244.       '~TIMESTAMP_X' => '30.10.2007 11:08:40',
    245.       '~IBLOCK_ID' => '51',
    246.       '~PROPERTY_TAGS_VALUE' => 'Блог,Спам',
    247.       '~PROPERTY_TAGS_VALUE_ID' => '52702',
    248.       'LIST_PAGE_URL' => '',
    249.     ),
    250.     11 =>
    251.     array (
    252.       'ID' => '12447',
    253.       'TIMESTAMP_X' => '29.10.2007 15:13:25',
    254.       'IBLOCK_ID' => '51',
    255.       'PROPERTY_TAGS_VALUE' => 'Блог, PN-7000, Pocket Navigator',
    256.       'PROPERTY_TAGS_VALUE_ID' => '52636',
    257.       '~ID' => '12447',
    258.       '~TIMESTAMP_X' => '29.10.2007 15:13:25',
    259.       '~IBLOCK_ID' => '51',
    260.       '~PROPERTY_TAGS_VALUE' => 'Блог, PN-7000, Pocket Navigator',
    261.       '~PROPERTY_TAGS_VALUE_ID' => '52636',
    262.       'LIST_PAGE_URL' => '',
    263.     ),
    264.     12 =>
    265.     array (
    266.       'ID' => '12446',
    267.       'TIMESTAMP_X' => '29.10.2007 13:39:33',
    268.       'IBLOCK_ID' => '51',
    269.       'PROPERTY_TAGS_VALUE' => 'Nokia, E90, Communicator, Коммуникатор, Блог',
    270.       'PROPERTY_TAGS_VALUE_ID' => '52635',
    271.       '~ID' => '12446',
    272.       '~TIMESTAMP_X' => '29.10.2007 13:39:33',
    273.       '~IBLOCK_ID' => '51',
    274.       '~PROPERTY_TAGS_VALUE' => 'Nokia, E90, Communicator, Коммуникатор, Блог',
    275.       '~PROPERTY_TAGS_VALUE_ID' => '52635',
    276.       'LIST_PAGE_URL' => '',
    277.     ),
    278.     13 =>
    279.     array (
    280.       'ID' => '12448',
    281.       'TIMESTAMP_X' => '29.10.2007 12:16:24',
    282.       'IBLOCK_ID' => '51',
    283.       'PROPERTY_TAGS_VALUE' => 'Nokia, Блог, 6110, Навигатор ',
    284.       'PROPERTY_TAGS_VALUE_ID' => '52637',
    285.       '~ID' => '12448',
    286.       '~TIMESTAMP_X' => '29.10.2007 12:16:24',
    287.       '~IBLOCK_ID' => '51',
    288.       '~PROPERTY_TAGS_VALUE' => 'Nokia, Блог, 6110, Навигатор ',
    289.       '~PROPERTY_TAGS_VALUE_ID' => '52637',
    290.       'LIST_PAGE_URL' => '',
    291.     ),
    292.     14 =>
    293.     array (
    294.       'ID' => '12443',
    295.       'TIMESTAMP_X' => '29.10.2007 11:36:14',
    296.       'IBLOCK_ID' => '51',
    297.       'PROPERTY_TAGS_VALUE' => 'Блог, плеер, Apple, iPod, Touch',
    298.       'PROPERTY_TAGS_VALUE_ID' => '52632',
    299.       '~ID' => '12443',
    300.       '~TIMESTAMP_X' => '29.10.2007 11:36:14',
    301.       '~IBLOCK_ID' => '51',
    302.       '~PROPERTY_TAGS_VALUE' => 'Блог, плеер, Apple, iPod, Touch',
    303.       '~PROPERTY_TAGS_VALUE_ID' => '52632',
    304.       'LIST_PAGE_URL' => '',
    305.     ),
    306.     15 =>
    307.     array (
    308.       'ID' => '12407',
    309.       'TIMESTAMP_X' => '25.10.2007 13:04:32',
    310.       'IBLOCK_ID' => '51',
    311.       'PROPERTY_TAGS_VALUE' => 'Блог, Отчет, Америка, Hewlett-Packard, HP',
    312.       'PROPERTY_TAGS_VALUE_ID' => '52433',
    313.       '~ID' => '12407',
    314.       '~TIMESTAMP_X' => '25.10.2007 13:04:32',
    315.       '~IBLOCK_ID' => '51',
    316.       '~PROPERTY_TAGS_VALUE' => 'Блог, Отчет, Америка, Hewlett-Packard, HP',
    317.       '~PROPERTY_TAGS_VALUE_ID' => '52433',
    318.       'LIST_PAGE_URL' => '',
    319.     ),
    320.     16 =>
    321.     array (
    322.       'ID' => '12343',
    323.       'TIMESTAMP_X' => '19.10.2007 18:41:55',
    324.       'IBLOCK_ID' => '51',
    325.       'PROPERTY_TAGS_VALUE' => 'mulder, блог',
    326.       'PROPERTY_TAGS_VALUE_ID' => '51985',
    327.       '~ID' => '12343',
    328.       '~TIMESTAMP_X' => '19.10.2007 18:41:55',
    329.       '~IBLOCK_ID' => '51',
    330.       '~PROPERTY_TAGS_VALUE' => 'mulder, блог',
    331.       '~PROPERTY_TAGS_VALUE_ID' => '51985',
    332.       'LIST_PAGE_URL' => '',
    333.     ),
    334.     17 =>
    335.     array (
    336.       'ID' => '12317',
    337.       'TIMESTAMP_X' => '18.10.2007 19:18:27',
    338.       'IBLOCK_ID' => '51',
    339.       'PROPERTY_TAGS_VALUE' => 'Блог, Перепрошивка, HTC, Artemis, P3300, Windows Mobile 6 Professional',
    340.       'PROPERTY_TAGS_VALUE_ID' => '51889',
    341.       '~ID' => '12317',
    342.       '~TIMESTAMP_X' => '18.10.2007 19:18:27',
    343.       '~IBLOCK_ID' => '51',
    344.       '~PROPERTY_TAGS_VALUE' => 'Блог, Перепрошивка, HTC, Artemis, P3300, Windows Mobile 6 Professional',
    345.       '~PROPERTY_TAGS_VALUE_ID' => '51889',
    346.       'LIST_PAGE_URL' => '',
    347.     ),
    348.     18 =>
    349.     array (
    350.       'ID' => '12301',
    351.       'TIMESTAMP_X' => '18.10.2007 11:12:29',
    352.       'IBLOCK_ID' => '51',
    353.       'PROPERTY_TAGS_VALUE' => 'Блог, Коммуникатор, Glofiish, M800, GPS',
    354.       'PROPERTY_TAGS_VALUE_ID' => '51872',
    355.       '~ID' => '12301',
    356.       '~TIMESTAMP_X' => '18.10.2007 11:12:29',
    357.       '~IBLOCK_ID' => '51',
    358.       '~PROPERTY_TAGS_VALUE' => 'Блог, Коммуникатор, Glofiish, M800, GPS',
    359.       '~PROPERTY_TAGS_VALUE_ID' => '51872',
    360.       'LIST_PAGE_URL' => '',
    361.     ),
    362.     19 =>
    363.     array (
    364.       'ID' => '12193',
    365.       'TIMESTAMP_X' => '10.10.2007 14:36:19',
    366.       'IBLOCK_ID' => '51',
    367.       'PROPERTY_TAGS_VALUE' => 'Блог, Коммуникатор, Mitac, Mio, A702, GPS, Телефонная клавиатура',
    368.       'PROPERTY_TAGS_VALUE_ID' => '51527',
    369.       '~ID' => '12193',
    370.       '~TIMESTAMP_X' => '10.10.2007 14:36:19',
    371.       '~IBLOCK_ID' => '51',
    372.       '~PROPERTY_TAGS_VALUE' => 'Блог, Коммуникатор, Mitac, Mio, A702, GPS, Телефонная клавиатура',
    373.       '~PROPERTY_TAGS_VALUE_ID' => '51527',
    374.       'LIST_PAGE_URL' => '',
    375.     ),
    376.   ),
    377. )
     
  6. Евгений Педан

    Евгений Педан Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    5
    Симпатии:
    0
    пасибки огромное, вроде пашет
     
  7. GoldFX

    GoldFX Новичок

    С нами с:
    10 авг 2020
    Сообщения:
    3
    Симпатии:
    0
    Есть многомерный массив который надо отсортировать по полям [PRICE] (с массива [PRICES]), [ID] и [NAME]
    1. Код (Text):
      1. Array
      2. [*](
      3. [*]    [0] => Array
      4. [*]        (
      5. [*]            [ID] => 845
      6. [*]            [~ID] => 845
      7. [*]            [NAME] => Завтрак Комбо (овсянка+капучино)
      8. [*]            [~NAME] => Завтрак Комбо (овсянка+капучино)
      9. [*]            [CODE] => zavtrak-kombo-_ovsyanka_kapuchino
      10. [*]            [~CODE] => zavtrak-kombo-_ovsyanka_kapuchino
      11. [*]            [DATE_CREATE] => 02.07.2020 22:30:04
      12. [*]            [~DATE_CREATE] => 02.07.2020 22:30:04
      13. [*]            [ACTIVE_FROM] =>
      14. [*]            [~ACTIVE_FROM] =>
      15. [*]            [IBLOCK_ID] => 4
      16. [*]            [~IBLOCK_ID] => 4
      17. [*]            [IBLOCK_SECTION_ID] => 83
      18. [*]            [~IBLOCK_SECTION_ID] => 83
      19. [*]            [DETAIL_PAGE_URL] => /menu/zavtraki/zavtrak-kombo-_ovsyanka_kapuchino/
      20. [*]            [~DETAIL_PAGE_URL] => /menu/zavtraki/zavtrak-kombo-_ovsyanka_kapuchino/
      21. [*]            [DETAIL_TEXT] =>
      22. [*]            [~DETAIL_TEXT] =>
      23. [*]            [DETAIL_TEXT_TYPE] => text
      24. [*]            [~DETAIL_TEXT_TYPE] => text
      25. [*]            [DETAIL_PICTURE] =>
      26. [*]            [~DETAIL_PICTURE] =>
      27. [*]            [PREVIEW_TEXT] =>
      28. [*]            [~PREVIEW_TEXT] =>
      29. [*]            [PREVIEW_TEXT_TYPE] => html
      30. [*]            [~PREVIEW_TEXT_TYPE] => html
      31. [*]            [PREVIEW_PICTURE] =>
      32. [*]            [~PREVIEW_PICTURE] =>
      33. [*]            [LANG_DIR] => /
      34. [*]            [~LANG_DIR] => /
      35. [*]            [SORT] => 0
      36. [*]            [~SORT] => 0
      37. [*]            [EXTERNAL_ID] => 845
      38. [*]            [~EXTERNAL_ID] => 845
      39. [*]            [IBLOCK_TYPE_ID] => site_fo
      40. [*]            [~IBLOCK_TYPE_ID] => site_fo
      41. [*]            [IBLOCK_CODE] => menu
      42. [*]            [~IBLOCK_CODE] => menu
      43. [*]            [IBLOCK_EXTERNAL_ID] => menu
      44. [*]            [~IBLOCK_EXTERNAL_ID] => menu
      45. [*]            [LID] => s1
      46. [*]            [~LID] => s1
      47. [*]            [~LIST_PAGE_URL] => /menu/
      48. [*]            [LIST_PAGE_URL] => /menu/
      49. [*]            [~SECTION_PAGE_URL] => /menu/zavtraki/
      50. [*]            [SECTION_PAGE_URL] => /menu/zavtraki/
      51. [*]            [EDIT_LINK] => /bitrix/admin/iblock_element_edit.php?IBLOCK_ID=4&type=site_fo&ID=845&lang=ru&force_catalog=&filter_section=0&bxpublic=Y&from_module=iblock&return_url=%2Fmenu%2Fzavtraki%2F
      52. [*]            [DELETE_LINK] => /bitrix/admin/iblock_list_admin.php?IBLOCK_ID=4&type=site_fo&lang=ru&action=delete&ID=E845&return_url=%2Fmenu%2Fzavtraki%2F
      53. [*]            [PROPERTIES] => Array
      54. [*]                (
      55. [*]             [FO_PRICE] => Array
      56. [*]                        (
      57. [*]                            [ID] => 5
      58. [*]                            [TIMESTAMP_X] => 2020-07-02 02:03:29
      59. [*]                            [IBLOCK_ID] => 4
      60. [*]                            [NAME] => Цены ФО
      61. [*]                            [ACTIVE] => Y
      62. [*]                            [SORT] => 500
      63. [*]                            [CODE] => FO_PRICE
      64. [*]                            [DEFAULT_VALUE] => Array
      65. [*]                                (
      66. [*]                                )
      67. [*]
      68.  
      69. [*]                            [PROPERTY_TYPE] => S
      70. [*]                            [ROW_COUNT] => 1
      71. [*]                            [COL_COUNT] => 30
      72. [*]                            [LIST_TYPE] => L
      73. [*]                            [MULTIPLE] => N
      74. [*]                            [XML_ID] => 23
      75. [*]                            [FILE_TYPE] =>
      76. [*]                            [MULTIPLE_CNT] => 5
      77. [*]                            [TMP_ID] =>
      78. [*]                            [LINK_IBLOCK_ID] =>
      79. [*]                            [WITH_DESCRIPTION] => N
      80. [*]                            [SEARCHABLE] => N
      81. [*]                            [FILTRABLE] => Y
      82. [*]                            [IS_REQUIRED] => N
      83. [*]                            [VERSION] => 1
      84. [*]                            [USER_TYPE] => AventaPrices
      85. [*]                            [USER_TYPE_SETTINGS] => Array
      86. [*]                                (
      87. [*]                                )
      88. [*]
      89.  
      90. [*]                            [HINT] =>
      91. [*]                            [PROPERTY_VALUE_ID] => 4000
      92. [*]                            [VALUE] => Array
      93. [*]                                (
      94. [*]                                    [100001084] => Array
      95. [*]                                        (
      96. [*]                                            [CODE] => 100001084
      97. [*]                                            [PRICE] => 90
      98. [*]                                            [OLD_PRICE] =>
      99. [*]                                            [WEIGHT] =>
      100. [*]                                            [SIZE] =>
      101. [*]                                            [THICK] =>
      102. [*]                                            [ENERGY] =>
      103. [*]                                            [RECOMEND] => N
      104. [*]                                            [DISCOUNT] => Y
      105. [*]                                            [SPECIAL] => N
      106. [*]                                            [INGS] => a:0:{}
      107. [*]                                            [PARTS] => a:0:{}
      108. [*]                                        )
      109. [*]
      110.  
      111. [*]                                )
      112. [*]
      113.  
      114. [*]                            [DESCRIPTION] =>
      115. [*]                            [VALUE_ENUM] =>
      116. [*]                            [VALUE_XML_ID] =>
      117. [*]                            [VALUE_SORT] =>
      118. [*]                            [~VALUE] => Array
      119. [*]                                (
      120. [*]                                    [100001084] => Array
      121. [*]                                        (
      122. [*]                                            [CODE] => 100001084
      123. [*]                                            [PRICE] => 90
      124. [*]                                            [OLD_PRICE] =>
      125. [*]                                            [WEIGHT] =>
      126. [*]                                            [SIZE] =>
      127. [*]                                            [THICK] =>
      128. [*]                                            [ENERGY] =>
      129. [*]                                            [RECOMEND] => N
      130. [*]                                            [DISCOUNT] => Y
      131. [*]                                            [SPECIAL] => N
      132. [*]                                            [INGS] => a:0:{}
      133. [*]                                            [PARTS] => a:0:{}
      134. [*]                                        )
      135. [*]
      136.  
      137. [*]                                )
      138. [*]
      139.  
      140. [*]                            [~DESCRIPTION] =>
      141. [*]                            [~NAME] => Цены ФО
      142. [*]                            [~DEFAULT_VALUE] => Array
      143. [*]                                (
      144. [*]                                )
      145. [*]
      146.  
      147. [*]                        )
      148. [*]
      149.  
      150. [*]                )
      151. [*]
      152.  
      153. [*]            [PRICES] => Array
      154. [*]                (
      155. [*]                    [0] => Array
      156. [*]                        (
      157. [*]                            [CODE] => 100001084
      158. [*]                            [PRICE] => 90
      159. [*]                            [OLD_PRICE] =>
      160. [*]                            [WEIGHT] =>
      161. [*]                            [SIZE] =>
      162. [*]                            [THICK] =>
      163. [*]                            [ENERGY] =>
      164. [*]                            [RECOMEND] => N
      165. [*]                            [DISCOUNT] => Y
      166. [*]                            [SPECIAL] => N
      167. [*]                            [INGS] => Array
      168. [*]                                (
      169. [*]                                )
      170. [*]
      171.  
      172. [*]                            [PARTS] => Array
      173. [*]                                (
      174. [*]                                )
      175. [*]
      176.  
      177. [*]                        )
      178. [*]
      179.  
      180. [*]                )
      181. [*]
      182.  
      183. [*]        )
      184. [*]...........
      185. [*])
     
  8. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.266
    Симпатии:
    405
    Как можно отсортировать по id и name. Просто забрать что ли эти данные?
    а вы тут три критерия перечислили.
     
  9. GoldFX

    GoldFX Новичок

    С нами с:
    10 авг 2020
    Сообщения:
    3
    Симпатии:
    0
    по верхнему уровню по ID и NAME - сортировка работает но криво, основной момент это сортировать исходя из значений поля PRICE массива [PRICES]
     
  10. Artur_hopf

    Artur_hopf Активный пользователь

    С нами с:
    7 май 2018
    Сообщения:
    2.266
    Симпатии:
    405
    если у одно товара только одна цена
    PHP:
    1. <?php
    2. $array = [
    3.     [
    4.         'ID' => 845,
    5.         'NAME' => 'Завтрак Комбо (овсянка+капучино)',
    6.         'PRICES' => [
    7.             [
    8.                 'PRICE' => 90
    9.             ]
    10.         ]
    11.     ],
    12.     [
    13.         'ID' => 545,
    14.         'NAME' => 'Завтрак Комбо 2 (овсянка+капучино)',
    15.         'PRICES' => [
    16.             [
    17.                 'PRICE' => 100
    18.             ]
    19.         ]
    20.     ],
    21.     [
    22.         'ID' => 643,
    23.         'NAME' => 'Завтрак Комбо 3 (овсянка+капучино)',
    24.         'PRICES' => [
    25.             [
    26.                 'PRICE' => 60
    27.             ]
    28.         ]
    29.     ],
    30. ];
    31.  
    32. usort($array, function ( $a, $b ){
    33.  
    34.     $price_a = $a['PRICES'][0]['PRICE'];
    35.     $price_b = $b['PRICES'][0]['PRICE'];
    36.  
    37.     if ( $price_a ==  $price_b )
    38.     {
    39.         return 0;
    40.     }
    41.  
    42.     return $price_a - $price_b;
    43. });
    44.  
    45. print_r($array);
     
    traum13 нравится это.
  11. GoldFX

    GoldFX Новичок

    С нами с:
    10 авг 2020
    Сообщения:
    3
    Симпатии:
    0
    Спасибо - подходит.
     
  12. traum13

    traum13 Новичок

    С нами с:
    10 окт 2020
    Сообщения:
    3
    Симпатии:
    0
    А если не одна, а несколько. и нужно выбрать максимальную из массива и по ней сортировать?