【问题标题】:PHP + MySQL + CodeIgniter: Check if current row existsPHP + MySQL + CodeIgniter:检查当前行是否存在
【发布时间】:2013-07-08 08:27:37
【问题描述】:

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

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

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

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

【问题讨论】:

    标签: php mysql codeigniter codeigniter-2


    【解决方案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'];
    

    【讨论】:

      【解决方案2】:

      例如,您可以这样做:

      $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'];
      }
      

      【讨论】:

        猜你喜欢
        • 2014-03-15
        • 2012-10-03
        • 2016-12-05
        • 1970-01-01
        • 1970-01-01
        • 2018-06-10
        • 1970-01-01
        • 1970-01-01
        • 2012-08-12
        相关资源
        最近更新 更多