Codeigniter随机行mysql错误 - 类CI_DB_mysqli_result的对象无法转换为字符串

时间:2012-10-19 08:38:23

标签: mysql sql codeigniter random

function random()
    {
    $anketadb = $this->load->database('anketa',TRUE);
    $br = $anketadb->count_all_results('anketadata');
    $nmb = mt_rand(1,$br);

    if ($nmb != 1){
    $nmb = $nmb - 1;
    }

    $count = $anketadb->get('anketadata', 1, $nmb);

    return $count;
    }
  

当我在View中回显它时,为什么这段代码返回ERROR:

     

遇到PHP错误

     

严重程度:4096

     

消息:无法将类CI_DB_mysqli_result的对象转换为   串

     

文件名:ankete / rezultatiankete.php

     

行号:52

2 个答案:

答案 0 :(得分:1)

您应该向我们展示更多代码(控制器,视图等),无论如何,在您使用的示例中

return $count;

在这种情况下$count;是一个对象,并且要回显它的字段,你必须在视图中循环

foreach ($count->result() as $row)
{
    echo $row->fieldname; // rerplace the fieldname with a real field/column name of your database
}

所以如果你试图回应$count那么你就是犯了一个错误,那就是一个对象,read more here

答案 1 :(得分:0)

echo不适用于使用print_r(returned value)输出对象,数组

的对象

使用SELECT * FROM table ORDER BY RAND() LIMIT 0,1;

获取随机列