使用CodeIgniter从mysql数据库中随机记录

des*_*ing 27 php mysql random codeigniter

我在互联网上研究过,但找不到任何东西......

我有一个mysql数据库,并在一个表中记录,我需要在每个页面加载时从该表中获取随机记录.我怎样才能做到这一点?那有什么功能吗?

欣赏!谢谢


SORTED:链接:http://www.derekallard.com/blog/post/ordering-database-results-by-random-in-codeigniter/

$this->db->select('name');
$query = $this->db->get('table');
$shuffled_query = $query->result_array();
shuffle ($shuffled_query);

foreach ($shuffled_query as $row) {
    echo $row['name'] . '<br />';
}
Run Code Online (Sandbox Code Playgroud)

Pat*_*rty 91

Codeigniter提供了在运行查询时按"RANDOM"排序结果的功能.例如

function get_random_page()
{
    $this->db->order_by('id', 'RANDOM');
    or
    $this->db->order_by('rand()');
    $this->db->limit(1);
    $query = $this->db->get('pages');
    return $query->result_array();

}
Run Code Online (Sandbox Code Playgroud)

我以前用过这个,发现它工作正常.希望有所帮助

  • @ user57750这是不可靠的.如果某些记录已损坏或被删除怎么办? (2认同)

ty8*_*812 6

我不知道codeigniter,但得到一个随机数据集是

SELECT * FROM table ORDER BY RAND() LIMIT 1
Run Code Online (Sandbox Code Playgroud)

ORDER BY RAND()显然,相关部分是" ".