CodeIgniter - вернуть только одну строку?

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

...query stuff...
$query = $this->db->get();
$ret = $query->result();
return $ret[0]->campaign_id;

Есть ли функция CodeIgniter для возврата первой строки? что-то вроде $query->row();

Или еще лучше, если бы была только одна строка, просто использовать объект запроса напрямую.

например. $query->campaign_id;

66 голосов | спросил Hailwood 25 42010vEurope/Moscow11bEurope/MoscowThu, 25 Nov 2010 22:15:50 +0300 2010, 22:15:50

7 ответов


0

Вы только что ответили на свой вопрос :) Вы можете сделать что-то вроде этого:

$query = $this->db->get();
$ret = $query->row();
return $ret->campaign_id;

Подробнее об этом можно прочитать здесь: http://www.codeigniter.com/user_guide /базы данных /results.html

ответил Alisson 25 42010vEurope/Moscow11bEurope/MoscowThu, 25 Nov 2010 22:36:59 +0300 2010, 22:36:59
0

Это лучший способ, поскольку он дает результат в одной строке:

$this->db->query("Your query")->row()->campaign_id;
ответил Suresh Kamrushi 20 ThuEurope/Moscow2012-12-20T15:24:21+04:00Europe/Moscow12bEurope/MoscowThu, 20 Dec 2012 15:24:21 +0400 2012, 15:24:21
0

Чтобы код прояснил, что вы собираетесь получить первую строку, CodeIgniter теперь позволяет использовать:

if ($query->num_rows() > 0) {
    return $query->first_row();
}

Для получения первой строки.

ответил wclear 8 Jpm1000000pmWed, 08 Jan 2014 13:38:24 +040014 2014, 13:38:24
0
$this->db->get()->row()->campaign_id;
ответил Maciej 17 +03002016-10-17T20:25:40+03:00312016bEurope/MoscowMon, 17 Oct 2016 20:25:40 +0300 2016, 20:25:40
0

Измените только две строки, и вы получите то, что хотите.

$query = $this->db->get();
$ret = $query->row();
return $ret->campaign_id;

попробуй.

ответил lalitpatadiya 3 MarpmTue, 03 Mar 2015 13:39:06 +03002015-03-03T13:39:06+03:0001 2015, 13:39:06
0

Мы можем получить один лимит использования в запросе

 $query = $this->db->get_where('mytable', array('id' => $id), $limit, $offset);
 $query = $this->db->get_where('mytable', array('id' => $id), $limit, $offset);
ответил Shakawat Hossain 9 J000000Monday18 2018, 10:08:24
0

класс receive_model расширяет CI_Model {

   public function index(){

      $this->db->select('*');

      $this->db->from('donor_details');

      $this->db->order_by('donor_id','desc');

      $query=$this->db->get();

      $row=$query->row();

      return $row;
 }

}

ответил Shipra Bohra Aashhiiii 24 MaramSat, 24 Mar 2018 10:19:54 +03002018-03-24T10:19:54+03:0010 2018, 10:19:54

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132