我觉得这是一个愚蠢的问题,但我找不到能够解释我所寻找内容的好文档。
如果我在模型中查询数据库,并将结果数组传递给我的View,我在哪里说如果有0结果打印“没有结果显示?”
答案 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; ?>