Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 根据codeigniter中的if条件获得结果_Php_Codeigniter - Fatal编程技术网

Php 根据codeigniter中的if条件获得结果

Php 根据codeigniter中的if条件获得结果,php,codeigniter,Php,Codeigniter,我正在使用以下代码,我希望如果状态为“0”,则应显示我的“已批准”,如果状态为“1”,则应显示我的“已批准” 我如何做到这一点,我尝试了以下代码,但没有为我工作 $this->db->select('*'); $this->db->from('surgery'); $this->db->where('doctor_id',$add_data['doctor_id']); $query = $this->db->get(); if ( $query

我正在使用以下代码,我希望如果状态为“0”,则应显示我的“已批准”,如果状态为“1”,则应显示我的“已批准” 我如何做到这一点,我尝试了以下代码,但没有为我工作

$this->db->select('*');
$this->db->from('surgery');
$this->db->where('doctor_id',$add_data['doctor_id']);
$query = $this->db->get();

if ( $queryc->num_rows() > 0 )
{
    $rows = $query->result_array();
    $newEntry=array();
    foreach ($rows as $rown)
    {
        $newEntry = $rown;
        if($rown['status']=="0")
        {
            $newEntry["status"] = "dissapproved";
        }
        else
        {
            $newEntry["status"] = "approved";
        }
    }
}
上面的代码显示一个结果/记录,如下所示

Array
(
    [id] => 5
    [status] => dissapproved
)

把你的循环改成这个,希望它能为你工作

foreach ($rows as $rown)
            {
                $newEntry = $rown;
                if($rown['status']=="0")
                {
                    $newEntry["status"][] = "dissapproved";
                }
                else
                {
                    $newEntry["status"][] = "approved";
                }
            }

您正在替换循环内部的数组
$newEntry
。这就是为什么你只能得到一个结果。试试下面的代码

 if ($query->num_rows() > 0) {
    $rows = $query->result_array();
    $newEntry = array();
    foreach ($rows as $rown) {
        if ($rown['status'] == "0") {
            $rown["status"] = "dissapproved";
        } else {
            $rown["status"] = "approved";
        }
        $newEntry[] = $rown;
    }
}
只需将
$rown['status']
替换为新字符串
approved
/
dissproved
,然后将其添加到数组
$newEntry

试试这个

        $i=0;
        foreach ($rows as $col) {
            //below code if you use $query->result();
            if ($col->status == 0) {
                $col->status = "dissapproved";
            } else {
                $col->status = "approved";
            }
            //below code if you use $query->result_array();
            if ($col['status'] == 0) {
                $rows[$i]['status'] = "dissapproved";
            } else {
                $rows[$i]['status'] = "approved";
            }
            $i++;
        }
        echo'<pre>';print_r($rows);die;
$i=0;
foreach(行作为$col){
//如果您使用$query->result(),请参见下面的代码;
如果($col->status==0){
$col->status=“dissapproved”;
}否则{
$col->status=“已批准”;
}
//如果您使用$query->result_array(),请使用下面的代码;
如果($col['status']==0){
$rows[$i]['status']=“未批准”;
}否则{
$rows[$i]['status']=“已批准”;
}
$i++;
}
回声';打印(行);死亡

请先阅读上面模型查询中的注释部分,将$queryc更改为$query like


请使用$rows的结果更新问题。您在那里转储的是什么
$newEntry
$rows
?您的数组仅显示记录,因为您正在替换数组中的值$新条目[“状态”][]=“某物”;将值推送到数组。如果您有任何问题,可以在这里询问
        $i=0;
        foreach ($rows as $col) {
            //below code if you use $query->result();
            if ($col->status == 0) {
                $col->status = "dissapproved";
            } else {
                $col->status = "approved";
            }
            //below code if you use $query->result_array();
            if ($col['status'] == 0) {
                $rows[$i]['status'] = "dissapproved";
            } else {
                $rows[$i]['status'] = "approved";
            }
            $i++;
        }
        echo'<pre>';print_r($rows);die;
if ( $queryc->num_rows() > 0 ) Instead if ( $query->num_rows() > 0 )