0

次のようなものから始めます。

配列 (
  0 =>
  配列 (
    'co' => '1',
    'lo' => 'aaa',
  )、
  1 =>
  配列 (
    'co' => '1',
    'lo' => 'bbb',
  )、
  2 =>
  配列 (
    'co' => '1',
    'lo' => 'ccc',
  )、
  3 =>
  配列 (
    'co' => '1',
    'lo' => 'aaa',
  )、
  4 =>
  配列 (
    'co' => '1',
    'lo' => 'bbb',
  )
)

次に、インデックス「lo」で配列要素をグループ化し、それらに付随する「co」の値をカウントして、最終的に次のようなものを取得します。

配列 (
  aaa => 2、
  bbb => 2、
  ccc => 1
)
4

3 に答える 3

0

はい、どうぞ ;-)

$in=array (
  0 => 
  array (
    'co' => '1',
    'lo' => 'aaa',
  ),
  1 => 
  array (
    'co' => '1',
    'lo' => 'bbb',
  ),
  2 => 
  array (
    'co' => '1',
    'lo' => 'ccc',
  ),
  3 => 
  array (
    'co' => '1',
    'lo' => 'aaa',
  ),
  4 => 
  array (
    'co' => '1',
    'lo' => 'bbb',
  )
);

$out= array();

for($i=0;$i<count($in);$i++)
{
    $out[$in[$i]['lo']]=0;
}

for($i=0;$i<count($in);$i++)
{
    $out[$in[$i]['lo']]+=$in[$i]['co'];
}

print_r($out);
于 2013-09-29T20:01:27.357 に答える