2010-11-27 4 views
0

내 모델에는 다음 코드가 있지만 결과는 배열 형식이 아닌 테이블로 반환되기를 원한다. 어떻게해야합니까?Model에서 CodeIgniter의 배열 결과를 테이블로 바꾼다

function info_car ($id) 
{ 

    $this->db->select('car_id,car_vin_number,car_make,car_model,car_year,car_color,location_location_id,source_source_id'); 
    $this->db->where('car_id', $id); 
    $this->db->from('car'); 

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

    if ($query->num_rows() > 0) 
    { 
     $row = $query->row_array(); 


     return $row; 
    } 

} 

답변

0

테이블은 PHP에 기본이 아닙니다. HTML 테이블과 혼동을 줄 수 있습니다. 그 경우,

<table> 
<?php foreach ($query as $row): ?> 
    <tr><?php echo $row->content ?></tr> 
<?php endforeach;?> 
</table> 
2

를 사용하여 HTML 테이블 클래스 A (약간 유연성) 솔루션은, 그러나 신속

$this->load->library('table'); 

$query = $this->db->query("SELECT * FROM my_table"); 

echo $this->table->generate($query); 

하거나 그것을 데이터의 배열을 던져 아주 멋지게 작업을 수행하고있는 경우 :

$data = array(
      array('Name', 'Color', 'Size'), 
      array('Fred', 'Blue', 'Small'), 
      array('Mary', 'Red', 'Large'), 
      array('John', 'Green', 'Medium') 
      ); 
echo $this->table->generate($data); 

여기에서 자세한 내용을보실 : http://codeigniter.com/user_guide/libraries/table.html

1

글쎄, 엄밀히 말하자면, 당신은 말아야 모델에서 테이블을 반환하지 마십시오. 테이블에 들어갈 데이터 만 반환하십시오.

컨트롤러가보기로 데이터를 보내면 데이터가 반복되어 표가 표시됩니다.

모델에서 테이블을 반환 한 다음보기로 전달하는 것이 편리하지만보기에 약간 다른 데이터 표시 방법이 있다면 비슷한 모델을 많이 작성하게 될 것입니다. 함수는 테이블을 형식화하는 방법 만 다릅니다.

모델에서 원시 데이터를 반환하면 뷰는 뷰의 필요에 따라 해당 데이터의 서식을 지정할 수 있습니다.

관련 문제