2013-04-02 2 views
0

Даже после многого поиска в google я не могу понять, как я могу сортировать ассоциативный массив из трехмерных.Как отсортировать три массива dimenisonal на основе конкретного индекса?

На самом деле, я хочу сортировать задания каждого пользователя в соответствии с опубликованной датой работы.

Ниже приводится код:

$sql = "SELECT * FROM `bf_alert_stack` WHERE `type` = 'immediately' order by created desc"; 


$q = db_query($sql); 

$user_alerts = array(); 

    while ($row = db_fetch_array($q)) 
{ 
    $user_alerts [$row['uid']] [$row['alert_id']] [$row['nid']] = $row['nid']; 
} 

Здесь в $ user_alerts массива $ строки [ 'НДИ'] содержит рабочие места боевой готовности конкретного пользователя.

Когда пользователь получает уведомление по электронной почте в это время, он должен показать задание в отсортированном порядке в соответствии с датой.

Ниже приводится образец данных от $ user_alerts массив

Array 
(
    [144320] => Array 
     (
      [3568728] => Array 
       (
        [30832] => 30832 
       ) 

      [3568884] => Array 
       (
        [30837] => 30837 
        [30827] => 30827 
        [30828] => 30828 
        [30830] => 30830 
        [30831] => 30831 
        [30832] => 30832 
        [30838] => 30838 
        [30839] => 30839 
        [30826] => 30826 
        [30806] => 30806 
        [30808] => 30808 
        [30807] => 30807 
        [30698] => 30698 
        [30697] => 30697 
        [30601] => 30601 
       ) 

     ) 

    [144330] => Array 
     (
      [3568731] => Array 
       (
        [30827] => 30827 
        [30839] => 30839 
        [30838] => 30838 
        [30837] => 30837 
        [30832] => 30832 
        [30831] => 30831 
        [30830] => 30830 
        [30828] => 30828 
        [30826] => 30826 
        [30806] => 30806 
        [30808] => 30808 
        [30807] => 30807 
        [30698] => 30698 
        [30697] => 30697 
        [30601] => 30601 
       ) 

     ) 

    [144218] => Array 
     (
      [3568753] => Array 
       (
        [30808] => 30808 
       ) 

     ) 

    [144216] => Array 
     (
      [3568732] => Array 
       (
        [30808] => 30808 
       ) 

     ) 

) 

Я хочу разобраться в этом выше user_alerts массив из строки [ «НДИ»], но грести [ «нидь»] 's детали в таблице базы данных .all nid должен быть перестроен в соответствии с созданной датой даты, которая присутствует в таблице.

+0

что я должен считать датой здесь ...? – alwaysLearn

+0

Фактически Узел №. используется для получения даты из таблицы – Akki

+0

, поэтому для сортировки я должен использовать '$ row ['nid']' для сортировки – alwaysLearn

ответ

0

Немного смущает это, но, возможно, случайно это сработает.?

$sql = "SELECT * FROM `bf_alert_stack` WHERE `type` = 'immediately' ORDER BY `created` DESC, `uid` ASC, `alert_id` DESC, `nid` DESC"; 
Смежные вопросы