mysqli类的对象无法转换为int

时间:2017-06-16 11:20:42

标签: php mysql

这是我的代码

$eid = rand(10000, 99999);

$this->db->select('eid');
$this->db->from('student');
$data['eid'] = $this->db->get();

foreach ($data['eid'] as $d) {
    if ($eid == $d) {
        $eid + 1;
    } else {
        $eid = $eid;
    }
}

我想为每个学生检查唯一的eid,但它给出了

  

类mysqli的对象无法转换为int'

此行foreach ($data['eid'] as $d )

上的错误

2 个答案:

答案 0 :(得分:0)

错误在于:

$data['eid'] = $this->db->get();  // It return an Std Class Object

然后:

if ($eid == $d) {

您要将object与数字$eid进行比较

答案 1 :(得分:0)

好的,你可以这样做

foreach ($data['eid'] as $d) {
if ($eid == $d->eid) {
    $eid + 1;
} else {
    $eid = $eid;
}
}

只需替换

if ($eid == $d)

 if ($eid == $d->eid)

它会正常工作。