string(3) "298"["user_id"] => string(1) "1"["/>  string(3) "298"["user_id"] => string(1) "1"[">

Heim >Backend-Entwicklung >PHP-Tutorial >PHP 数组中如果有一个元素相同,怎么拼接其他元素

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

WBOY
WBOYOriginal
2016-06-13 12:19:39915Durchsuche

PHP 数组中如果有一个元素相同,如何拼接其他元素
比如原数组是这样的
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(<br />  array(<br />    "pla_id" => "298",<br />    "user_id" => "1",<br />    "due_in" => "8.33",<br />  ),<br />  array(<br />    "pla_id" => "976",<br />    "user_id" => "1",<br />    "due_in" => "338.90",<br />  ),<br />  array(<br />    "pla_id" => "56",<br />    "user_id" => "2",<br />    "due_in" => "25.6",<br />  )<br />);<br />$b = array();<br />foreach($a as $v) {<br />  if(! isset($b[$v['user_id']])) $b[$v['user_id']] = $v;<br />  else $b[$v['user_id']]["due_in"] .= ',' . $v["due_in"];<br />}<br />var_dump(array_values($b));
array(2) {<br />  [0]=>  array(3) {<br />    ["pla_id"]=>    string(3) "298"<br />    ["user_id"]=>    string(1) "1"<br />    ["due_in"]=>    string(11) "8.33,338.90"<br />  }<br />  [1]=>  array(3) {<br />    ["pla_id"]=>    string(2) "56"<br />    ["user_id"]=>    string(1) "2"<br />    ["due_in"]=>    string(4) "25.6"<br />  }<br />}<br /><br />

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn