Nice programing

CodeIgniter-한 행만 반환합니까?

nicepro 2020. 10. 28. 21:01
반응형

CodeIgniter-한 행만 반환합니까?


현재 다음을 사용하여 하나의 행만 반환해야하는 데이터베이스에서 쿼리를 수행하는 경우 :

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

첫 번째 행을 반환하는 CodeIgniter 함수가 있습니까? 뭔가$query->row();

또는 행이 하나 뿐인 경우 쿼리 개체를 직접 사용할 수있는 기능이 더 좋습니다.

예 : $query->campaign_id;


방금 자신의 질문에 답하셨습니다. :) 다음과 같이 할 수 있습니다.

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

자세한 내용은 http://www.codeigniter.com/user_guide/database/results.html 에서 읽을 수 있습니다 .


이것은 한 줄로 결과를 제공하므로 더 나은 방법입니다.

$this->db->query("Your query")->row()->campaign_id;

Alisson이 말한 내용에 추가하려면 행이 반환되는지 확인할 수 있습니다.

// Query stuff ...
$query = $this->db->get();

if ($query->num_rows() > 0)
{
    $row = $query->row(); 
    return $row->campaign_id;
}

return null; // or whatever value you want to return for no rows found

첫 번째 행을 가져 오려는 코드를 명확히하기 위해 CodeIgniter에서 다음을 사용할 수 있습니다.

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

첫 번째 행을 검색합니다.


$this->db->get()->row()->campaign_id;

두 줄로만 변경하면 실제로 원하는 것을 얻을 수 있습니다.

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

시도 해봐.


쿼리에서 단일 사용 제한을 얻을 수 있습니다.

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

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

class reward_model extends 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;
 }

}

참고 URL : https://stackoverflow.com/questions/4280235/codeigniter-return-only-one-row

반응형