本文實例講述了PHP實現將MySQL重復ID二維數組重組為三維數組的方法。分享給大家供大家參考,具體如下:
應用場景
MYSQL在使用關聯查詢時,比如 產品表 與 產品圖片表關聯,一個產品多張產品圖片,關聯查詢結果如下:
$arr=[ ['id'=>1,'img'=>'img1'], ['id'=>1,'img'=>'img2'], ['id'=>1,'img'=>'img3'], ['id'=>2,'img'=>'img1'], ['id'=>2,'img'=>'img2'], ['id'=>2,'img'=>'img3'], ['id'=>3,'img'=>'img1'], ['id'=>3,'img'=>'img2'], ['id'=>3,'img'=>'img3'], ]
那麼,我們要的結果一般是這樣的,如下:
$arr=[ ['id'=>1,'img'=>['img1','img2','img3']], ['id'=>2,'img'=>['img1','img2','img3']], ['id'=>3,'img'=>['img1','img2','img3']], ]
解決方案
$arr=[ ['id'=>1,'img'=>'img1'], ['id'=>1,'img'=>'img2'], ['id'=>1,'img'=>'img3'], ['id'=>2,'img'=>'img1'], ['id'=>2,'img'=>'img2'], ['id'=>2,'img'=>'img3'], ['id'=>3,'img'=>'img1'], ['id'=>3,'img'=>'img2'], ['id'=>3,'img'=>'img3'], ] $arr1=array(); foreach ($arr as $key => $value) { if( in_array($value['id'], $value)){ $arr1[$value['id']]['id']=$value['id']; $arr1[$value['id']]['img'][]=$value['img']; } } var_dump($arr1);
更多關於PHP相關內容感興趣的讀者可查看本站專題:《PHP數組(Array)操作技巧大全》、《php排序算法總結》、《PHP常用遍歷算法與技巧總結》、《PHP數據結構與算法教程》、《php程序設計算法總結》、《PHP數學運算技巧總結》、《php正則表達式用法總結》、《PHP運算與運算符用法總結》、《php字符串(string)用法總結》及《php常見數據庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。