基于此LINK,如果ID不存在,我会使用此代码制作错误消息
这是我在 CI模型
中的代码public function user_list_update($id){
$id = $this->db->where('id',$id);
$query = $this->db->get('info');
$row = $query->row();
if($row > 0){ //line 26
return $row;
}else{
echo "does not exist.";
}
}
并在控制器
中$id = $this->input->get('id');
$data["user_list"] = $this->um->user_list_update($id);
//some code here to display data of ID
我收到此错误
遇到PHP错误
严重性:注意
消息:类stdClass的对象无法转换为int
文件名:models / users_model.php
行号:26
回溯:
文件:C:\ xampp \ htdocs \ CI \ application \ models \ users_model.php行:26 功能:_error_handler
我是C.I的新人
答案 0 :(得分:1)
使用此:
if($query->num_rows() > 0)
而不是:
if($row > 0){
答案 1 :(得分:1)
$row = $query->row();
的结果是一个名为$row
您无法根据它给出错误的整数测试对象,如您所见
因此,测试实际设置$row
变量
public function user_list_update($id){
$id = $this->db->where('id',$id);
$query = $this->db->get('info');
$row = $query->row();
if(isset($row)){ //line 26
return $row;
}else{
echo "does not exist.";
}
}
答案 2 :(得分:1)
您可以使用此解决方案解决您的问题:
public function user_list_update($id){
$this->db->where('id',$id);
$this->db->from('info');
$query = $this->db->get();
if($query->num_rows() > 0) {
return $query->row;
} else {
echo "does not exist.";
}
}