Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- array (
- 0 => array (
- 'invoice_id' => 'WUI_588'
- 'email' => 'abc@hotmail.com'
- ),
- 1 => array (
- 'invoice_id' => 'WUI_588'
- 'email' => 'def@hotmail.com'
- ),
- 2 => array (
- 'invoice_id' => 'WUI_589'
- 'email' => 'ninja@hotmail.com'
- ),
- 3 => array (
- 'invoice_id' => 'WUI_589'
- 'email' => 'ghi@hotmail.com'
- ),
- 4 => array (
- 'invoice_id' => 'WUI_590'
- 'email' => '123@hotmail.com'
- ),
- 5 => array (
- 'invoice_id' => 'WUI_590'
- 'email' => '123@hotmail.com'
- ),
- 6 => array (
- 'invoice_id' => 'WUI_591'
- 'email' => '456@hotmail.com'
- ),
- 7 => array (
- 'invoice_id' => 'WUI_591'
- 'email' => '456@hotmail.com'
- ),
- )
- INDEX | INVOICE ID | EMAIL
- 0 | WUI_588 | abc@hotmail.com
- 1 | WUI_588 | def@hotmail.com
- 2 | WUI_589 | ninja@hotmail.com
- 3 | WUI_589 | ghi@hotmail.com
- INDEX | INVOICE ID | EMAIL
- 0 | WUI_588 | abc@hotmail.com, def@hotmail.com
- 1 | WUI_589 | ninja@hotmail.com, ghi@hotmail.com
- foreach ($array as $key => $value) {
- $invoiceidbucket[] = $value['invoice_id'];
- if(in_array($value['invoice_id'], $invoiceidbucket)) {
- $value['merged_email'][] = $value['email'];
- //Clearing array
- $invoiceidbucket = array;
- }
- }
- $final_array = array();
- foreach($initial_array as $arr){
- $final_array[$arr['invoice_id']]['invoice_id'] = $arr['invoice_id'];
- $final_array[$arr['invoice_id']]['email'] = (!empty($final_array[$arr['invoice_id']]['email']))?$final_array[$arr['invoice_id']]['email'].','.$arr['email'] : $arr['email'];
- }
- $final_array = array_values($final_array);
- echo "<pre/>";print_r($final_array);
- $a = [];//Your array;
- $retArray = []; //Output Array
- foreach ($a as $key => $val) {
- $retArray['invoice_id'][] = $retArray['email'];
- }
- $array=[
- ['invoice_id'=>'WUI_588','email'=>'abc@hotmail.com'],
- ['invoice_id'=>'WUI_588','email'=>'def@hotmail.com'],
- ['invoice_id'=>'WUI_589','email'=>'ninja@hotmail.com'],
- ['invoice_id'=>'WUI_589','email'=>'ghi@hotmail.com'],
- ['invoice_id'=>'WUI_590','email'=>'123@hotmail.com'],
- ['invoice_id'=>'WUI_590','email'=>'123@hotmail.com'],
- ['invoice_id'=>'WUI_591','email'=>'456@hotmail.com'],
- ['invoice_id'=>'WUI_591','email'=>'456@hotmail.com']
- ];
- foreach($array as $row){ // iterate all rows
- if(!isset($result[$row['invoice_id']])){ // if first occurrence of invoice_id...
- $result[$row['invoice_id']]=$row; // save the full row with invoice_id as the temporary key
- }else{ // if not the first occurrence of invoice_id...
- $result[$row['invoice_id']]['email'].=", {$row['email']}"; // concatenate the email value
- }
- }
- var_export(array_values($result));
- array (
- 0 =>
- array (
- 'invoice_id' => 'WUI_588',
- 'email' => 'abc@hotmail.com, def@hotmail.com',
- ),
- 1 =>
- array (
- 'invoice_id' => 'WUI_589',
- 'email' => 'ninja@hotmail.com, ghi@hotmail.com',
- ),
- 2 =>
- array (
- 'invoice_id' => 'WUI_590',
- 'email' => '123@hotmail.com, 123@hotmail.com',
- ),
- 3 =>
- array (
- 'invoice_id' => 'WUI_591',
- 'email' => '456@hotmail.com, 456@hotmail.com',
- ),
- )
Add Comment
Please, Sign In to add comment