i would like to create a array of 3 dimensions from 3 mysql tables(sections(id,title) => rubriques(id,title) => category(id,title):
[0] section_title_1
section id 1
[0] rubrique_title_1
rubrique id 1
[0] category_title_1
category id 1
[1] category_title_2
category id 2
[2] ........................
[1] rubrique_title_2
rubrique id 2
...................
[1] section_title_2
.........
here is my code WITHOUT id:
$output = array();
$sections = $this->_model->get_table_sections();
foreach($sections as $section){
$output[$section->section_title] = array();
$rubriques = $this->_model->get_rubriques_for_a_section($section->section_id);
foreach($rubriques as $rubrique){
$output[$section->section_title][$rubrique->rubrique_title] = array();
$categories =$this->_model-> get_categ_for_a_section_and_a_rubrique($section->section_id,$rubrique->rubrique_id);
foreach($categories as $categorie){
$output[$section->section_title][$rubrique->rubrique_title][] = $categorie->categorie_title;
}
}
}
My question:
how to have the ID (section,rubrique,category in the array OUTPUT ??
i have tried :
$output[$section->section_title] = array("section id" => $section->section_id);
$output[$section->section_title][$rubrique->rubrique_title] = array("rubrique id" => $rubrique->rubrique_id);
$output[$section->section_title][$rubrique->rubrique_title][$categorie->categorie_title] = array("catid" => $categorie->categorie_id);
but for category , there is problem....
array (size=41)
'Agriculture' =>
array (size=4)
'section id' => string '1' (length=1)
'Agriculture' =>
array (size=43)
'rubrique id' => string '1' (length=1)
'Andaineuse' =>
array (size=1)
...
'Arroseur' =>
array (size=1)
Can anyone spot where I'm going wrong? Help is appreciated!
Many thanks............
This might be the answer:
But I would suggested you use IDs as keys in array instead of titles.
It's more clear, unique and it should work as you want. In foreach you can get keys (IDs) easily: