在CodeIgniter查询中显示0结果

时间:2012-02-01 18:50:46

标签: php codeigniter

我觉得这是一个愚蠢的问题,但我找不到能够解释我所寻找内容的好文档。

如果我在模型中查询数据库,并将结果数组传递给我的View,我在哪里说如果有0结果打印“没有结果显示?”

3 个答案:

答案 0 :(得分:6)

如果要向用户显示文本,最好在视图中完成。

假设您将result()数组传递给视图,您可以检查它是否为空(即没有记录):

if(empty($query->result())){
    // no records to display
} else {
    // records have been returned
}

否则,如果您正在处理整个db对象(而不仅仅是num_rows()),则可以通过result()方法进行检查:

if($query->num_rows() > 0){
    // records have been returned
} else {
    // no records
}

答案 1 :(得分:2)

你可以试试......

$query = $this->db->query("YOUR QUERY");

$a = $query->result_array();

if(count($a) > 0){
  foreach ($a as $row)
  {
    //....
  }
}

我建议您阅读此链接http://codeigniter.com/user_guide/database/index.html

答案 2 :(得分:0)

可能在视图中做得最好。假设您没有使用任何模板引擎,

<?php if ($result->num_rows() > 0): ?>
  // do something...
<?php else: ?>
  <p>There are no results to display</p>
<?php endif; ?>