2014-10-15 5 views
1

Это мой массив:PHP массив Объединить в многомерный массив по ключу

$recid[$row['Rec_Mgmt_id']] = array 
(
    'program'=> $row['Program'], 
    'doc' => $row['Date_of_clinic'], 
    'name' => $row["FName"]. " " . $row['LName'], 
    'claim' => $row['ClaimNum'], 
    'md' => $row['Doctor'], 
    'prognosis' => $row['Prognosis'], 
    'workStatus' => $row['WorkStatus'], 
    'service' => array 
    (
     $row['Service_Requested_id'] => array 
     (
      'name' => $row['Service'], 
      'site' => $row['Service_Site'], 
      'status' => $row['Approval_Status'], 
      'denial' => $row['Reason_Denial'], 
      'approvalDate' => $row['Date_Approval'], 
      'txIn' => $row['TX_Intake_Date'], 
      'txOut' => $row['TX_Discharge_Date'], 
      'comments' => $row['Comments'] 
     ) 
    ) 
); 

Как бы я добавить ниже массив в другой массив «сервис»?

array($row['Service_Requested_id'] => array 
    (
    'name' => $row['Service'], 
    'site' => $row['Service_Site'], 
    'status' => $row['Approval_Status'], 
    'denial' => $row['Reason_Denial'], 
    'approvalDate' => $row['Date_Approval'], 
    'txIn' => $row['TX_Intake_Date'], 
    'txOut' => $row['TX_Discharge_Date'], 
    'comments' => $row['Comments'] 
    ) 
); 

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

ответ

1

Я не уверен, что полностью понимаю ваш вопрос, но я думаю, что это сделает то, что вам нужно.

$recid[$row['Rec_Mgmt_id']]['service'][$row['Service_Requested_id']] = array (  
    'name' => $row['Service'], 
    'site' => $row['Service_Site'], 
    'status' => $row['Approval_Status'], 
    'denial' => $row['Reason_Denial'], 
    'approvalDate' => $row['Date_Approval'], 
    'txIn' => $row['TX_Intake_Date'], 
    'txOut' => $row['TX_Discharge_Date'], 
    'comments' => $row['Comments']); 
+2

Это может привести к тому, что вы получите массив массива. Я бы удалил 'array ($ row ['Service_Requested_id'] =>' и его закрывающий массив. – Jerome

+2

Вы не захотите добавить новый массив, а вместо этого установите новый массив под конкретным ключом. $ Recid. .. ['service'] [$ row ['Service_Requested_id']] = array ('name' => ...); 'Или используйте array_merge для добавления нового массива. –

+0

Обновлен мой ответ, спасибо, что указали это! – holygrinder