与数组php和父母和孩子pardigma concrouter和concat

基本上我使用phpexcel。

我有3列在那些excel是输出它hierarichal。

列:delivery_order_tli_id是父项。 列:delivery_order_hanwa_id是父项的子项。 COlumn:coil_ids是父级的子级连接。

这是数据。 在这个excel中,像这样的数据:

delivery_order_tli_id delivery_order_hanwa_id coil_id 1 1 108 1 1 114 1 1 116 1 1 120 1 1 123 1 1 130 1 1 163 2 1 113 2 1 115 2 1 117 2 1 119 2 1 129 2 1 131 2 1 161 3 3 171 3 221 2880 3 221 2881 3 221 2887 3 221 2889 3 221 2890 4 4 236 4 4 237 4 4 238 4 4 239 4 4 244 4 4 245 4 5 246 4 4 253 

所以,

 $activeSheetData = $objPhpExcel->getActiveSheet()->toArray(null, true, true, true); 

我成功地将这些列加载到数组中。

我这样的格式。

 delivery_order_tli_id delivery_order_hanwa_id coil_ids 1 1 108, 114, 116, 120, 123, 130, 163 2 1 113, 115, 117, 119, 129, 131, 161 3 3 171 3 221 2880, 2881, 2887, 2889,2890 4 4 236, 237,238,239, 244, 245, 253 4 5 246 

请指教。

你可以做类似的事情

 $result = array(); foreach ($activeSheetData as $data) { if (isset($result[$data['delivery_order_tli_id'] . $data['delivery_order_hanwa_id']])) { $result[$data['delivery_order_tli_id'] . $data['delivery_order_hanwa_id']]['coil_id'][] = $data['coil_id']; $result[$data['delivery_order_tli_id'] . $data['delivery_order_hanwa_id']]['coil_id_csv'] = join(',', $result[$data['delivery_order_tli_id'] . $data['delivery_order_hanwa_id']]['coil_id']); } else { $result[$data['delivery_order_tli_id'] . $data['delivery_order_hanwa_id']] = array( 'delivery_order_tli_id' => $data['delivery_order_tli_id'], 'delivery_order_hanwa_id' => $data['delivery_order_hanwa_id'], 'coil_id' => array($data['coil_id']), 'coil_id_csv' => $data['coil_id'] ); } } 

演示