Модель:
public function fetch_emp()
{
$this->db->select('emp_id');
$this->db->from('emp');
$res=$this->db->get();
foreach($res->result() as $row)
{
$id=$row->emp_id;
$this->db->select('emp_name');
$this->db->from('employee_master');
$this->db->where('emp_id',$id);
$res=$this->db->get();
return $res->result();
}
}
Контроллер:
public function employee()
{
$result=$this->emp_model->fetch_emp();
if ($result!=false)
$res['cmp_name']=$result;
else
$res['cmp_name']='NA';
}
$this->loadViews("emp/emp_views", $this->global, $res , NULL);
}
Вид:
<?php print_r($cmp_name);?>
Как только я получаю идентификатор из db, у меня все идентификаторы вообще не проблема, но когда я использовал цикл foreach для поиска идентификатора и получения их имен из другого db, он отображает только имя 1-го идентификатора ... Например: если есть 5 идентификаторов, но когда я ищу идентификатор, чтобы получить имя из другой базы данных, он показывает только имя 1-го идентификатора. В чем проблема, я не знаю, пожалуйста, помогите мне.





Вы можете сделать это (получить список имен), напрямую используя метод join(), например:
public function fetch_emp()
{
$this->db->select('emp_name');
$this->db->from('emp');
$this->db->join('employee_master', 'employee_master.emp_id = emp.emp_id');
$res=$this->db->get();
return $res->result();
}
Массив ([0] => Массив ([0] => Объект stdClass ([emp_name] => ASK)) [1] => Массив () [2] => Массив () [3] => Массив ([0 ] => stdClass Object ([emp_name] => sakur)) [4] => Array ()) как я могу получить эти данные ???
KK ... У меня есть еще один способ получить значения пустого массива для хранения в другом массиве в php. Например. Array () Я хотел бы сохранить эти значения в другом массиве, как я могу это сделать?
Вы имеете в виду: $new_array[] = $old_array?
Нет .. Рассмотрим такой массив как Array ([0] => stdClass Object ([emp_name] => ASK)) [1] => Array () [2] => Array (). В этом примере, например, только массив 0 содержит значение, поэтому в другом массиве нет проблемных значений, но оставшиеся 1 и 2 являются пустыми массивами, как я могу вставить эти данные в другой массив.
Я не очень понимаю, какова ваша цель, как массивы 1 и 2 становятся пустыми? И чем вы хотите заполнить эти пустые массивы?
на самом деле массивы 1 и 2 пусты в db, поэтому теперь отображаются пустые значения. Я сохраняю это значение как null в другом массиве.
Попробуйте удалить пустые массивы с помощью функции array_filter(): $array = array_filter(array_map('array_filter', $array));
да, я получаю эти данные, но данные находятся в массиве, как я могу преобразовать их в строку ??