我的模特如下
$values = array_count_values($books);
arsort($values);
$newArray = array_keys($values);
$views_books_array = array_slice($newArray, 0, 5);
$result = $this->db->where_in('book_id',$views_books_array)->get('books');
return $result->result_array();
新数组如下所示
数组([0] => 37 [1] => 28 [2] => 31 [3] => 30 [4] => 38)
但是当我获取数据时,它将随机从我提供的数据中获取数据
im将book_id传递给模型和控制器 我的控制器如下所示,
$ data ['result'] = $ this-> Book_Model-> get_viewed_books($ book_id);
如果我的print_r结果会像
Array([0] => 28 [1] => 30 [2] => 31 [3] => 37 [4] => 38)
那样,但是我想要根据newArray的数据,我做错了什么
请帮助我解决所有问题
答案 0 :(得分:-1)
我并没有真正理解您想做什么,但是如果您想获得有序的结果,则可以使用以下方法:
$this->db->order_by('column', 'order');
第二个参数可以是:“ ASC”或“ DESC”。 检查代码点火器manual。
答案 1 :(得分:-1)
以下是直接从手册中摘录并适合您的情况的示例:
<?php
$numbers = array(4, 6, 2, 22, 11);
sort($numbers);
$arrlength = count($numbers);
for($x = 0; $x < $arrlength; $x++) {
echo $numbers[$x];
echo "<br>";
}
?>
您还可以通过查询定义此示例:
$this->db->order_by('column_name', 'ASC');