在我的控制器和模型功能上,我正在尝试对得分进行排序
问题:在模型功能的下面的foreach中,我如何显示它,就像分数相同然后根据他们玩了多少结束来分类
目前只按分数对其进行排序。
当前输出
(
[0] => Array
(
[skip] => A
[second] => B
[lead] => C
[score] => 65
[ends] => 41
)
[1] => Array
(
[skip] => D
[second] => E
[lead] => F
[score] => 65
[ends] => 42
)
[2] => Array
(
[skip] => G
[second] => H
[lead] => I
[score] => 52
[ends] => 38
)
)
模型功能
public function getTriplesResults($event_id) {
$data = array();
$this->db->where('event_id', $event_id);
$this->db->order_by('score', 'desc');
$query = $this->db->get('triples');
foreach ($query->result_array() as $result) {
$data[] = array(
'skip' => $result['skip'],
'second' => $result['second'],
'lead' => $result['lead'],
'score' => $result['score'],
'ends' => $result['ends']
);
}
return $data;
}
控制器
<?php
class Results extends MX_Controller {
public function __construct() {
parent::__construct();
//$this->load->model('catalog/tournament/event_model');
}
public function triples($event_id = "") {
echo "<pre>";
print_r($this->getTriplesResults($event_id));
echo "</pre>";
}
public function getTriplesResults($event_id) {
$data = array();
$this->db->where('event_id', $event_id);
$this->db->order_by('score', 'asc');
$query = $this->db->get('triples');
foreach ($query->result_array() as $result) {
$data[] = array(
'skip' => $result['skip'],
'second' => $result['second'],
'lead' => $result['lead'],
'score' => $result['score'],
'ends' => $result['ends']
);
}
return $data;
}
}
答案 0 :(得分:3)
您可以将查询调整为按两列排序:
$this->db->order_by('score desc, ends desc');
OR
$this->db->order_by("score", "desc");
$this->db->order_by("ends", "desc");