質問編集履歴

1 内容追加

tyutyu

tyutyu score 11

2017/09/12 10:27  投稿

php 多次元配列のグループ化、振り分け方法2
以下の振り分け方法で、以下のような多重の配列を$result にするための、
アルゴリズムわかる方いませんか?
前回回答の応用です
前回の回答の応用です。(配列増やすだけでも可能ですが、他に方法があれば)
[振り分け方法](https://teratail.com/questions/92049)
URLで以下参考にしたが 非常におしいです。多次元なんとかならないでしょうか。
[PHP:連想配列をキーでグループ化](http://qiita.com/suin/items/c524cf84368332db426b)
[array_columnの多次元配列](http://qiita.com/ProjectICKX/items/76c4c210b56be39c5fa7)
```
$A=array(
   'type' =>1, 'value'=>200, 'cnt'=>5, 'no'=>No1001,
   'type' =>1, 'value'=>200, 'cnt'=>6, 'no'=>No1002,
   'type' =>1, 'value'=>201, 'cnt'=>5, 'no'=>No1003,
   'type' =>1, 'value'=>201, 'cnt'=>5, 'no'=>No1004,
   'type' =>2, 'value'=>10, 'cnt'=>10, 'no'=>No1005,
   'type' =>1, 'value'=>200, 'cnt'=>5, 'no'=>No1006,
   'type' =>2, 'value'=>10, 'cnt'=>10, 'no'=>No1007,
   'type' =>2, 'value'=>11, 'cnt'=>5, 'no'=>No1008, <--ここ注意
   'type' =>1, 'value'=>201, 'cnt'=>5, 'no'=>No1009,
   'type' =>1, 'value'=>200, 'cnt'=>5, 'no'=>No1010,
   'type' =>2, 'value'=>10, 'cnt'=>5, 'no'=>No1011,
   'type' =>1, 'value'=>200, 'cnt'=>5, 'no'=>No1008, <--ここ注意
  :
  :
);
$result = array(
      'type' =>'1' , 'value'=> 200, 'cnt'=>5 'nolist'=>'No1001,No1006,No1010,No1008,',
      'type' =>'1' , 'value'=> 200, 'cnt'=>6 'nolist'=>'No1002,',
      'type' =>'1' , 'value'=> 201, 'cnt'=>5 'nolist'=>'No1003,No1004,No1009,',
      'type' =>'2' , 'value'=> 10, 'cnt'=>10 'nolist'=>'No1005,No1007,',
      'type' =>'2' , 'value'=> 11, 'cnt'=>5 'nolist'=>'No1008,',
      'type' =>'2' , 'value'=> 10, 'cnt'=>5 'nolist'=>'No1011,',
);
```
  • PHP

    27086 questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • 配列

    839 questions

    配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

  • 多次元配列

    86 questions

    1次元配列内にさらに配列を格納している配列を、多次元配列と呼びます。

  • アルゴリズム

    609 questions

    アルゴリズムとは、定められた目的を達成するために、プログラムの理論的な動作を定義するものです。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る