2016-02-12 78 views
0

我試圖創建一個數據數組,它將按時間分組(field_time_value)。爲什麼我的函數不會添加正確的數據

這是SQL查詢的原始結果和我對這個數據進行操作($查詢):

enter image description here

這是結果我想有(需要) - 所有關閉鍵具有空值:

enter image description here

這就是我現在所擁有的(看的[15.15] [數據] [1] [數據]的價值 - 我T的空,按照$查詢應該在,如上面填寫)數據,所有的封閉式鍵具有空值:

enter image description here

這是我使用的代碼:

$days = array(
    1 => t('Monday'), 
    2 => t('Tuesday'), 
    3 => t('Wednesday'), 
    4 => t('Thursday'), 
    5 => t('Friday'), 
    6 => t('Saturday'), 
    7 => t('Sunday'), 
); 

    foreach ($query as $key => $value) { 
    foreach($days as $day_key => $day_name) { 
     if ($value->field_day_value == $day_key) { 
     $rows[$value->field_time_value]['data'][$day_key] = array('data' => 'Day: '.$value->field_day_value.' Hour: '.$value->field_time_value); 
     } else { 
     $rows[$value->field_time_value]['data'][$day_key] = array('data' => 'empty'); 
     } 
    } 
    } 

我在做什麼錯了?

回答

0

不要打擾了,我得到了問題。應該有一個更多的條件,這將防止從我的數組中排除數據:

foreach ($query as $key => $value) { 
    foreach($days as $day_key => $day_name) { 
     if ($value->field_day_value == $day_key) { 
     $rows[$value->field_time_value]['data'][$day_key] = array('data' => 'Day: '.$value->field_day_value.' Hour: '.$value->field_time_value); 
     } else { 
     if (!isset($rows[$value->field_time_value]['data'][$day_key])) { 
      $rows[$value->field_time_value]['data'][$day_key] = array('data' => 'empty'); 
     } 
     } 
    } 
    } 
相關問題