PHP 数组中如果有一个元素相同,如何拼接其他元素

WBOY
Libérer: 2016-06-23 13:34:45
original
759 Les gens l'ont consulté

比如原数组是这样的
array(3) {
[0] => array(6) {
["pla_id"] => string(3) "298"
["user_id"] => string(1) "1"
["due_in"] => string(15) "8.33"
}
[1] => array(6) {
["pla_id"] => string(3) "976"
["user_id"] => string(1) "1"
["due_in"] => string(15) "338.90"
}
[2] => array(6) {
["pla_id"] => string(3) "56"
["user_id"] => string(1) "2"
["due_in"] => string(15) "25.6"
}}
因为数组中的user_id=1 是一样的
要得到最后这样数组,要怎么写(就是把user_id相同的其他元素拼接在一起)?
array(3) {
[0] => array(6) {
["pla_id"] => string(3) "298,976"
["user_id"] => string(1) "1"
["due_in"] => string(15) "8.33,338.90"
}
[1] => array(6) {
["pla_id"] => string(3) "56"
["user_id"] => string(1) "2"
["due_in"] => string(15) "25.6"
}}


回复讨论(解决方案)

$a = array(  array(    "pla_id" => "298",    "user_id" => "1",    "due_in" => "8.33",  ),  array(    "pla_id" => "976",    "user_id" => "1",    "due_in" => "338.90",  ),  array(    "pla_id" => "56",    "user_id" => "2",    "due_in" => "25.6",  ));$b = array();foreach($a as $v) {  if(! isset($b[$v['user_id']])) $b[$v['user_id']] = $v;  else $b[$v['user_id']]["due_in"] .= ',' . $v["due_in"];}var_dump(array_values($b));
Copier après la connexion
Copier après la connexion
array(2) {  [0]=>  array(3) {    ["pla_id"]=>    string(3) "298"    ["user_id"]=>    string(1) "1"    ["due_in"]=>    string(11) "8.33,338.90"  }  [1]=>  array(3) {    ["pla_id"]=>    string(2) "56"    ["user_id"]=>    string(1) "2"    ["due_in"]=>    string(4) "25.6"  }}
Copier après la connexion
Copier après la connexion

$a = array(  array(    "pla_id" => "298",    "user_id" => "1",    "due_in" => "8.33",  ),  array(    "pla_id" => "976",    "user_id" => "1",    "due_in" => "338.90",  ),  array(    "pla_id" => "56",    "user_id" => "2",    "due_in" => "25.6",  ));$b = array();foreach($a as $v) {  if(! isset($b[$v['user_id']])) $b[$v['user_id']] = $v;  else $b[$v['user_id']]["due_in"] .= ',' . $v["due_in"];}var_dump(array_values($b));
Copier après la connexion
Copier après la connexion
array(2) {  [0]=>  array(3) {    ["pla_id"]=>    string(3) "298"    ["user_id"]=>    string(1) "1"    ["due_in"]=>    string(11) "8.33,338.90"  }  [1]=>  array(3) {    ["pla_id"]=>    string(2) "56"    ["user_id"]=>    string(1) "2"    ["due_in"]=>    string(4) "25.6"  }}
Copier après la connexion
Copier après la connexion


谢谢啊 太感谢了
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal