检查codeigniter中的行号

时间:2013-10-12 07:39:07

标签: codeigniter

这是我的代码:

foreach($jobs->result() as $job)
{  
    $table_data_rows.=get_jobs_data_row($job, $controller);
}

function get_jobs_data_row($job, $controller)
{
    if($job[0]) { }
}

当我们在codeigniter

中将单个行作为参数传递给函数时,如何检查特定的行号

2 个答案:

答案 0 :(得分:0)

在codeigniter中从返回的数据库数据中获取行的方法是$result->row(rowNumber); considering $result contains result of query(请查看下一页http://ellislab.com/codeigniter/user-guide/database/results.html上的row()部分)

在您的情况下,您可以使用行号的引用传递每一行,如下所示:

$jobs = $this->db->query("YOUR QUERY");
for($i=0; $i<$jobs->num_rows(); $i++)
{  
    $table_data_rows.=get_jobs_data_row($jobs->row($i), $controller, $i);
}

function get_jobs_data_row($job, $controller, $rowNum)
{
    if($rowNum == 0) { return $job; }
}

答案 1 :(得分:0)

这里我不能传递额外的参数,因为当我们直接调用get_jobs_data_row时,这个函数会在几个部分重用,有时它会抛出错误。

因此我发现自己要使用主键进行检查。

例如:

function get_jobs_data_row($job, $controller)
{
    $key = $job->jobs_id;
    $controller->db->select_sum('pure');

    $sum_qry = $controller->db->get_where('jobs', array('jobs_id <= ' => $key));
    //code to retrieve


}