1

I am new to PHP Codeigniter. I have a database inner join query in that I am fetching category id, category name, subcategory id and subcategory name as shown below.

e.g. enter image description here

I am figuring out the way to create multidimensional array with category id, name and subcategories details as an in it.

e.g.

Array[0]=>Array ( [category_id] => 1 [category_name] => Computer [sub] => 
          Array ([0]=> [subcategory_id] => 1 [subcategory_name] => C Programming ) 
                 [1]=> [subcategory_id] => 2 [subcategory_name] => Website Development) 
                 [2]=> [subcategory_id] => 4 [subcategory_name] => Java)) 

Array[1]=>Array ( [category_id] => 2 [category_name] => Robotics [sub] => 
          Array ( [subcategory_id] => 3 [subcategory_name] => Robo Wars))

Thanks

1
  • can you post the query? Commented Jan 20, 2014 at 15:03

1 Answer 1

2

Suppose the following is your result array from db

$queryResult = array(
  array('category_id'=>1,'category_name'=>'Computer','subcategory_id'=>1,'subcategory_name'=>'C Programming','category_id'=>'1'),
  array('category_id'=>1,'category_name'=>'Computer','subcategory_id'=>2,'subcategory_name'=>'Website Development','category_id'=>'1'),
  array('category_id'=>1,'category_name'=>'Computer','subcategory_id'=>4,'subcategory_name'=>'Java','category_id'=>'1'),
  array('category_id'=>2,'category_name'=>'Robotics','subcategory_id'=>3,'subcategory_name'=>'Robo Wars','category_id'=>'2'),
);

Then you could try

$result = array();
foreach($queryResult as $arr){
  $result[$arr['category_id']]['category_id']= $arr['category_id'];
  $result[$arr['category_id']]['category_name'] = $arr['category_name'];
  $result[$arr['category_id']]['sub'][]= array('subcategory_id'=>$arr['subcategory_id'],'subcategory_name'=>$arr['subcategory_name']);
}

Hope this is helpful

Sign up to request clarification or add additional context in comments.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.