Guest User

Untitled

a guest
Feb 16th, 2018
517
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.19 KB | None | 0 0
  1. array (
  2. 0 => array (
  3. 'invoice_id' => 'WUI_588'
  4. 'email' => 'abc@hotmail.com'
  5. ),
  6. 1 => array (
  7. 'invoice_id' => 'WUI_588'
  8. 'email' => 'def@hotmail.com'
  9. ),
  10. 2 => array (
  11. 'invoice_id' => 'WUI_589'
  12. 'email' => 'ninja@hotmail.com'
  13. ),
  14. 3 => array (
  15. 'invoice_id' => 'WUI_589'
  16. 'email' => 'ghi@hotmail.com'
  17. ),
  18. 4 => array (
  19. 'invoice_id' => 'WUI_590'
  20. 'email' => '123@hotmail.com'
  21. ),
  22. 5 => array (
  23. 'invoice_id' => 'WUI_590'
  24. 'email' => '123@hotmail.com'
  25. ),
  26. 6 => array (
  27. 'invoice_id' => 'WUI_591'
  28. 'email' => '456@hotmail.com'
  29. ),
  30. 7 => array (
  31. 'invoice_id' => 'WUI_591'
  32. 'email' => '456@hotmail.com'
  33. ),
  34. )
  35.  
  36. INDEX | INVOICE ID | EMAIL
  37. 0 | WUI_588 | abc@hotmail.com
  38. 1 | WUI_588 | def@hotmail.com
  39. 2 | WUI_589 | ninja@hotmail.com
  40. 3 | WUI_589 | ghi@hotmail.com
  41.  
  42. INDEX | INVOICE ID | EMAIL
  43. 0 | WUI_588 | abc@hotmail.com, def@hotmail.com
  44. 1 | WUI_589 | ninja@hotmail.com, ghi@hotmail.com
  45.  
  46. foreach ($array as $key => $value) {
  47. $invoiceidbucket[] = $value['invoice_id'];
  48. if(in_array($value['invoice_id'], $invoiceidbucket)) {
  49. $value['merged_email'][] = $value['email'];
  50.  
  51. //Clearing array
  52. $invoiceidbucket = array;
  53. }
  54. }
  55.  
  56. $final_array = array();
  57. foreach($initial_array as $arr){
  58. $final_array[$arr['invoice_id']]['invoice_id'] = $arr['invoice_id'];
  59. $final_array[$arr['invoice_id']]['email'] = (!empty($final_array[$arr['invoice_id']]['email']))?$final_array[$arr['invoice_id']]['email'].','.$arr['email'] : $arr['email'];
  60. }
  61. $final_array = array_values($final_array);
  62. echo "<pre/>";print_r($final_array);
  63.  
  64. $a = [];//Your array;
  65. $retArray = []; //Output Array
  66. foreach ($a as $key => $val) {
  67. $retArray['invoice_id'][] = $retArray['email'];
  68. }
  69.  
  70. $array=[
  71. ['invoice_id'=>'WUI_588','email'=>'abc@hotmail.com'],
  72. ['invoice_id'=>'WUI_588','email'=>'def@hotmail.com'],
  73. ['invoice_id'=>'WUI_589','email'=>'ninja@hotmail.com'],
  74. ['invoice_id'=>'WUI_589','email'=>'ghi@hotmail.com'],
  75. ['invoice_id'=>'WUI_590','email'=>'123@hotmail.com'],
  76. ['invoice_id'=>'WUI_590','email'=>'123@hotmail.com'],
  77. ['invoice_id'=>'WUI_591','email'=>'456@hotmail.com'],
  78. ['invoice_id'=>'WUI_591','email'=>'456@hotmail.com']
  79. ];
  80. foreach($array as $row){ // iterate all rows
  81. if(!isset($result[$row['invoice_id']])){ // if first occurrence of invoice_id...
  82. $result[$row['invoice_id']]=$row; // save the full row with invoice_id as the temporary key
  83. }else{ // if not the first occurrence of invoice_id...
  84. $result[$row['invoice_id']]['email'].=", {$row['email']}"; // concatenate the email value
  85. }
  86. }
  87. var_export(array_values($result));
  88.  
  89. array (
  90. 0 =>
  91. array (
  92. 'invoice_id' => 'WUI_588',
  93. 'email' => 'abc@hotmail.com, def@hotmail.com',
  94. ),
  95. 1 =>
  96. array (
  97. 'invoice_id' => 'WUI_589',
  98. 'email' => 'ninja@hotmail.com, ghi@hotmail.com',
  99. ),
  100. 2 =>
  101. array (
  102. 'invoice_id' => 'WUI_590',
  103. 'email' => '123@hotmail.com, 123@hotmail.com',
  104. ),
  105. 3 =>
  106. array (
  107. 'invoice_id' => 'WUI_591',
  108. 'email' => '456@hotmail.com, 456@hotmail.com',
  109. ),
  110. )
Add Comment
Please, Sign In to add comment