-1

この配列はforeachループにあります

foreach ($data as $key => $value) {
    $filter_cat_name = $this->filter_cat_name($value['filter_cat_id']);
    $filter_sub_cat_name = $this->filter_sub_cat_name($value['sub_cat_id']);
    $var = array($filter_cat_name,$filter_sub_cat_name);
    print_r($var);
}

//foreach output
Array ( [0] => Brand Name [1] => Sony )  
Array ( [0] => Brand Name [1] => nokia )  
Array ( [0] => Display Size [1] => 360 x 640 )  
Array ( [0] => Brand Name [1] => Samsung )  
Array ( [0] => Display Size [1] => 480 x 640 ) 

このようにフォーマットまたは変更するにはどうすればよいですか?

ブランド 名
sonynokiasamsung
_

ディスプレイサイズ
360x640
480 x 640

4

3 に答える 3

0

これは役立つはずです。

<?php
foreach ($data as $key => $value) {

                $filter_cat_name = $this->filter_cat_name($value['filter_cat_id']);
                $filter_sub_cat_name = $this->filter_sub_cat_name($value['sub_cat_id']);

                $var = array($filter_cat_name,$filter_sub_cat_name);
if($var[0]=='Brand Name')
$brand[] = $var[1]; // For Brand Name

if($var[0]== 'Display Size')
$size[] = $var[1]; // For Display Name       
                print_r($var);

    }
print_r($brand);
print_r($size);
?>
于 2012-11-09T07:58:00.673 に答える
0

これは役に立ちますか?

foreach ($data as $key => $value) {
    $filter_cat_name = $this->filter_cat_name($value['filter_cat_id']);
    $filter_sub_cat_name = $this->filter_sub_cat_name($value['sub_cat_id']);

    if (!isset($var[$filter_cat_name])) {
         $var[$filter_cat_name] = array();
    }
    $var[$filter_cat_name][] = $filter_sub_cat_name;
}

$brands = $var['Brand Name'];
$displays = $var['Displays'];

$varこれはあなたのようなフォーマットになります

Array(
    ['Brand Name'] => array('Nokia','Samsung'),
    ['Displays']   => array('320x120','140x70')
)
于 2012-11-09T07:47:41.600 に答える
0

これはあなたを助けるはずです:

$i=0;
$groups = array();
foreach($array as $item){
   $groups[$item[0]][$i] = $item[1];
   $i++;
}

出力:

array 
'BrandName' =>  
  array
  0 => string 'Sony' (length=4) 
  1 => string 'nokia' (length=5) 
  3 => string 'Samsung' (length=7) 
'Display Size' =>
  array 
  2 => string '360 x 640' (length=9) 
  4 => string '480 x 640' (length=9)
于 2012-11-09T08:49:14.903 に答える