前提・実現したいこと
下記のような配列を、同じid毎にtextをカンマ区切りで格納したいです。
foreach等、使いましたが思うように整形できません。
(プラス、textが3つ以上になった場合、ランダムで2つに絞るということもしたいです)
よろしくお願いします。
↓元データ
array:3 [ 0 => array:2 [ "id" => 1 "text" => "あいうえお" ] 1 => array:2 [ "id" => 1 "text" => "かきくけこ" ] 2 => array:2 [ "id" => 2 "text" => "さしすせそ" ] ]
↓理想
array:2 [ 0 => array:2 [ "id" => 1 "text" => "あいうえお,かきくけこ" ] 1 => array:2 [ "id" => 2 "text" => "さしすせそ" ] ]
試したこと
$contentss = array(0=>array("id"=>1,"text"=>"あいうえお"),1=>array("id"=>1,"text"=>"かきくけこ"),2=>array("id"=>2,"text"=>"さしすせそ")); $groups = []; foreach ($contentss as $content) { $groups[$content["id"]][] = $content["text"]; }
↓結果
array:2 [ 1 => array:2 [ 0 => "あいうえお" 1 => "かきくけこ" ] 2 => array:1 [ 0 => "さしすせそ" ] ]
補足情報(FW/ツールのバージョンなど)
PHP 7.2.0
Laravel 5.1.46
回答3件
あなたの回答
tips
プレビュー