我有查询,我需要从中获取随机值(随机行)并限制为 5 个结果,然后从主数组(查询)中减去它们。我怎样才能做到这一点?
这是查询功能:
public function galerija_jedna_slike()
{
$galerija = $this->db->order_by('id_galerija', 'RANDOM')->limit(1)->get($this->table)->row();
$q = " SELECT * FROM galerija_slike
LEFT JOIN galerije
ON galerija_slike.galerija_id = galerije.id_galerija
WHERE galerija_id = $galerija->id_galerija ";
return $this->db->query($q)->result_array();
}
我设法获得了随机值,现在我需要从主数组中删除这些值。功能:
function array_random_assoc($arr, $num = 1) {
$keys = array_keys($arr);
shuffle($keys);
$r = array();
for ($i = 0; $i < $num; $i++) {
$r[$keys[$i]] = $arr[$keys[$i]];
}
return $r;
}