ホームページ > バックエンド開発 > PHPチュートリアル > PHP 配列内の 1 つの要素が同じ場合、他の要素を結合するにはどうすればよいでしょうか?

PHP 配列内の 1 つの要素が同じ場合、他の要素を結合するにはどうすればよいでしょうか?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-23 13:34:45
オリジナル
797 人が閲覧しました

たとえば、元の配列は次のようになります
array(3) {
[0] => array(6) {
["pla_id"] => string(3) "298"
["user_id"] => 文字列(1) "1"
["due_in"] => 文字列(15) "8.33" }
[1] =>
["pla_id"] => (3) "976"
["user_id"] => 文字列(1) "1"
["due_in"] => 文字列(15) "338.90"
}
[2] => ) {
["pla_id"] => 文字列(3) "56"
["user_id"] => 文字列(1) "2"
["due_in"] => 文字列(15) "25.6"
}}
配列内の user_id=1 が同じであるため
このように最終的な配列を記述するにはどうすればよいですか (つまり、同じ user_id を持つ他の要素を結合する)。
配列(3) {
[0] => 配列(6) {
["pla_id"] => 文字列(3) "298,976"
["ユーザーID"] => 文字列(1)
["due_in"] => 文字列(15) "8.33,338.90"
}
[1] => 配列(6) {
["pla_id"] => 文字列(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));
ログイン後にコピー

れーれー

ありがとうございます。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート