Я пытаюсь получить массив json в codeigniter с индексом, но не могу получить ожидаемый результат. Пожалуйста, кто-нибудь поможет мне создать массив json, включающий индексы, показанные в следующем ожидаемом массиве.
Я попробовал следующий код
мой код контроллера
public function returnDepartments()
{
$departments = $this->search_model->departmentsjson();
$return_json = array();
foreach ($departments as $department) {
$return_json [] = [
'id'=>$department->id,
'departmentTitle' => $department->name,
'icon'=> base_url().'public/contents/img/groups/'.$department->image,
'allSubjects'=> $department->courses,
'lecturesCount' => $department->links
];
}
$json_array= str_replace(array("[","]"),"",htmlspecialchars(stripslashes(json_encode(array('departments'=>$return_json))),ENT_NOQUOTES));
echo $json_array;
}
мой код модели
public function departmentsjson()
{
$this->db->select('gp.*,count(gc.id) as "courses",count(cl.id) as "links"');
$this->db->from('group_departments gp');
$this->db->join('group_courses gc','gp.id = gc.group_id','left');
$this->db->join('course_links cl','gc.id = cl.course_id','left')->group_by('gp.id');
return $this->db->get()->result();
}
* получение json*
{
"departments":{ "0": {
"id": "1",
"departmentTitle": "Basic & Health Sciences",
"icon": "public/contents/img/groups/basic_n_helth.jpg",
"allSubjects": "10608",
"lecturesCount": "10594"
},
"1":{
"id": "2",
"departmentTitle": "Applied Sciences",
"icon": "public/contents/img/groups/applied_sciense.jpg",
"allSubjects": "3806",
"lecturesCount": "3800"
},
"2":{
"id": "3",
"departmentTitle": "Social Sciences & Humanities",
"icon": public/contents/img/groups/social_sciences.jpg",
"allSubjects": "26365",
"lecturesCount": "26322"
}
}
}
Ожидается Json
{
"departments": {
"id": "1",
"departmentTitle": "Basic & Health Sciences",
"icon": "public/contents/img/groups/basic_n_helth.jpg",
"allSubjects": "10608",
"lecturesCount": "10594"
},
{
"id": "2",
"departmentTitle": "Applied Sciences",
"icon": "public/contents/img/groups/applied_sciense.jpg",
"allSubjects": "3806",
"lecturesCount": "3800"
},
{
"id": "3",
"departmentTitle": "Social Sciences & Humanities",
"icon": "public/contents/img/groups/social_sciences.jpg",
"allSubjects": "26365",
"lecturesCount": "26322"
}
}
Пожалуйста, помогите мне решить эту проблему. Как я могу получить мой ожидаемый json массив