В этом коде у меня есть две разные таблицы, то есть skill_master and jobs_category. Теперь я хочу получить эти две разные данные таблицы в одну, а также преобразовать ее данные в формат JSON с помощью json_encode.
$this->db->select('category');
$this->db->from('jobs_category');
$this->db->order_by('category');
$query1 = $this->db->get();
$result1 = $query1->result_array();
$this->db->select('key_skills');
$this->db->from('skill_master');
$this->db->order_by('key_skills');
$query2 = $this->db->get();
$result2 =$query2->result_array();
$arr = array();
foreach($result1 as $row)
{
foreach($result2 as $rows)
{
$arr[] = $row['category'].','.$rows['skill_master'];
}
}
$json = json_encode($arr);
echo $json;
Например:
таблица 1: мастер_скиллов
key_skills
==========
java
php
dot net
таблица2: job_category
category
========
IT Jobs
Air line Jobs
Hardware Jobs
Итак, здесь у меня есть две таблицы. Теперь я хочу объединить эти две таблицы и получить данные в формате JSON, например ["java", "PHP", "dot net", "IT Jobs", "Air Line Jobs", "Hardware Jobs"]. Итак, как я могу это сделать? Пожалуйста помогите.
Спасибо
нет никакого отношения @DanishAli



$this->db->select('category');
$this->db->from('jobs_category');
$this->db->order_by('category');
$query_category= $this->db->get();
$result_category = $query_category->result_array();
$this->db->select('key_skills');
$this->db->from('skill_master');
$this->db->order_by('key_skills');
$query_skills = $this->db->get();
$result_skills =$query_skills->result_array();
Если вы получаете записи из таблицы jobs_category и skill_master вот так
$result_category =
[
'0' => ['category' => 'IT Jobs'],
'1' => ['category' => 'Air line Jobs'],
'2' => ['category' => 'Hardware Jobs']
];
$result_skills =
[
'0' => ['skill_master' => 'java'],
'1' => ['skill_master' => 'php'],
'2' => ['skill_master' => 'dot net']
];
$final_arr = $final_category_arr = $final_skill_arr = [];
foreach($result_category as $category_row)
{
$final_category_arr[] = $category_row['category'];
}
foreach($result_skills as $skill_row)
{
$final_skill_arr[] = $skill_row['skill_master'];
}
$final_arr = array_merge($final_category_arr, $final_skill_arr);
$json = json_encode($final_arr);
echo $json;
Результат будет таким
["IT Jobs","Air line Jobs","Hardware Jobs","java","php","dot net"]
переименование столбца при извлечении и объединении данных должно работать. попробуйте следующий код
$this->db->select('category');
$this->db->from('jobs_category');
$this->db->order_by('category');
$query_category= $this->db->get();
$result_category = $query_category->result_array();
$this->db->select('key_skills as category');
$this->db->from('skill_master');
$this->db->order_by('key_skills');
$query_skills = $this->db->get();
$result_skills =$query_skills->result_array();
$result = array_merge($result_category,$result_skills);
Эти две таблицы имеют отношение или нет?