我正在使用CodeIgniter。我的问题是,我在函数中没有序列号。我只得到n = 1,并且只继续显示1。我不想在那里再使用每个条件。
所以我得到的输出是
Sr_no | Name
1 | MNBV
1 | lkjhg
1 | lkjh
我需要类似的输出
Sr_no | Name
1 | MNBV
2 | lkjhg
3 | lkjh
控制器
foreach($order_list as $order) {
if(is_array($order)){
foreach($order as $r) {
$data1[]=$this->order_access_list($r); //calling function
}
}
else{
$data1[]=$this->order_access_list($order); //calling function
}
}
功能
public function order_access_list($val) {
$n=1;
$data = array("Sr_No" => $n,
"Name"=>$val->c_firstname."".$val->c_lastname
);
$n++;
return $data;
}
答案 0 :(得分:0)
您需要在函数中将变量$n
声明为static
,以便在调用之间保留其值,即
public function order_access_list($val) {
static $n=1;
$data = array("Sr_No" => $n,
"Name"=>$val->c_firstname."".$val->c_lastname
);
$n++;
return $data;
}
请参见manual。