PHP + MySQL + CodeIgniter:检查当前行是否存在

时间:2013-07-08 08:27:38

标签: php mysql codeigniter codeigniter-2

我想稍微优化脚本并保存cpu一些工作,所以我必须创建for循环。在这个循环中,我将使用数据库中的一些数据,下面是我当前的代码:

$result = $this->Model->function();
for ($i = 0; $i < $result->num_rows(); $i++)
{
    echo $result->row_array($i)['row'];
}

这里我需要检查下一行是否存在。这个将在if语句中的for循环中位于所有代码的顶部,但是存在一些问题。如果我在for循环中键入$result->num_rows()+1并回显最后一行(不存在),则它的值不为null,但它与之前的行相同。

如何检查当前行是否为空?

2 个答案:

答案 0 :(得分:1)

或者不是每次都检查布尔值,再加上你不再调用num_rows方法:

$result = $this->Model->function();
$y = $result->num_rows();
for ($i = 0; $i < $y-1; $i++)
{        
    echo $result->row_array($i)['row'];
}
echo 'last row';
echo $result->row_array($y-1)['row'];

答案 1 :(得分:0)

您可以这样做:

$result = $this->Model->function();
$y = $result->num_rows();
$y--;
for ($i = 0; $i < $result->num_rows(); $i++)
{
    if ($i == $y)(
        echo 'last row';
    )
    echo $result->row_array($i)['row'];
}