Codeigniter $ this-> db-> get (), как мне вернуть значения для определенной строки?

Скажем, у меня есть таблица базы данных с тремя столбцами: ID, Name и Age. Мне нужно найти пользователя с определенным (уникальным) идентификатором, а затем вернуть возраст. В настоящее время я использую следующий код

$this->db->where('id', '3'); $q = $this->db->get('my_users_table'); 

Как мне получить возраст для этого пользователя? Я думаю, что мне нужно использовать

 $q->result() 

Но не уверен, как использовать его с одной строкой.

РЕШЕНИЕ ОДИН

 $this->db->where('id', '3'); // here we select every column of the table $q = $this->db->get('my_users_table'); $data = $q->result_array(); echo($data[0]['age']); 

РЕШЕНИЕ ДВА

 // here we select just the age column $this->db->select('age'); $this->db->where('id', '3'); $q = $this->db->get('my_users_table'); $data = $q->result_array(); echo($data[0]['age']); 

РЕШЕНИЕ ТРЕТЬЯ

 $this->db->select('age'); $this->db->where('id', '3'); $q = $this->db->get('my_users_table'); // if id is unique, we want to return just one row $data = array_shift($q->result_array()); echo($data['age']); 

РЕШЕНИЕ ЧЕТВЕРТЫЙ (без АКТИВНОГО ЗАПИСИ)

 $q = $this->db->query('SELECT age FROM my_users_table WHERE id = ?',array(3)); $data = array_shift($q->result_array()); echo($data['age']); 

вы можете использовать row () вместо result ().

 $this->db->where('id', '3'); $q = $this->db->get('my_users_table')->row(); 

Доступ к одной строке

 //Result as an Object $result = $this->db->select('age')->from('my_users_table')->where('id', '3')->limit(1)->get()->row(); echo $result->age; //Result as an Array $result = $this->db->select('age')->from('my_users_table')->where('id', '3')->limit(1)->get()->row_array(); echo $result['age']; 

Вы просто используете это в одной строке.

 $query = $this->db->get_where('mytable',array('id'=>'3')); 

Если вы динамически получаете свои данные, например, когда вам нужны данные на основе пользователя, зарегистрированного по их использованию, рассмотрите следующий пример кода для Нет активной записи:

  $this->db->query('SELECT * FROM my_users_table WHERE id = ?', $this->session->userdata('id')); return $query->row_array(); 

Это вернет определенную строку на основе ваших заданных данных сеанса пользователя.