У меня есть таблица с этой структурой:
ID int (11)
user_id int (11)
notification_event_id int (11)
как я могу получить массив, который содержит все значения столбца user_id:
EX:
Array([0]=> 1,[1]=>2,[2]=>3,[3]=>4,[4]=>5,[5]=>6);
и без зацикливания на result_array()
значение и перемещение user_ids в новый массив целых чисел
это возможно?
Каждая строка результатов сама по себе является массивом, поэтому необходим цикл. Зачем вам нужно делать это по-другому?
Самый простой способ сделать то, что вы хотите:
// Model function get_all_userid() { $query = $this->db->get('table_name'); $array = array(); foreach($query->result() as $row) { $array[] = $row['user_id']; // add each user id to the array } return $array; } // Controller function user_list() { $data = $this->your_model->get_all_userid(); // get results array from model $this->load->view('your_view', $data); // pass array to view }
Очевидно, вам нужно будет отрегулировать имена таблиц / моделей в соответствии с теми, которые вы используете.
Я сделал исследование и нашел следующее:
Примечание: «магическое» решение для этого, например: использование пользовательской функции codeigniter, я думаю, не существует в реальной версии фрейма. Таким образом, вам нужно создать функцию в модели или в пользовательском помощнике.
Ссылка: выпадающий список заполнения из базы данных
// Controller $data['city_list'] = $this->City_model->get_dropdown_list(); $this->load->view('my_view_file', $data); Model: // Model (or create a helper -- see below) function get_dropdown_list() { $this->db->from('city'); $this->db->order_by('name'); $result = $this->db->get(); $return = array(); if($result->num_rows() > 0) { foreach($result->result_array() as $row) { $return[$row['id']] = $row['name']; } } return $return; } // View <?php echo form_dropdown('city_id', $city_list, set_value('city_id', $city_id));
if ( ! function_exists('drop_down')) { function drop_down($name, $match, $data) { $form = '<select name="'.$name.'"> ' ."\n"; foreach($data as $key => $value) { $selected = ($match == $key) ? 'selected="selected"' : NULL ; $form .= '<option value="'. $key .'" '. $selected .'>'.$value.'' . "\n"; } $form .= '</select>' . "\n"; return $form; } } In the view echo drop_down('mylist', 3, $data);