Listeleme yaparken 1 eski 1 yeni şekilde sıralama.
listem bu şekilde.
foreach ile bastırıyorum buradaki verileri ama listeleme yapmak isterken
tarihe göre 1 yeni 1 eski şekilde yapmak istiyorum.
1 yeni 1 eski 1 yeni 1 eski şekilde nasıl sıralayabilirim ? :)
public function get_kagit_listesi()
{
$this->db->select("products.*,users.slug as user_slug,users.shop_name,users.role as user_role");
$this->db->join("users","users.id = kagit_listesi.satici_id","LEFT");
$this->db->join("products","products.id = kagit_listesi.urun_id");
$this->db->group_by('satici_id');
$this->db->order_by("tarih");
return $this->db->get('kagit_listesi')->result();
}
Mysql tarafında nasıl yaparsın bilmiyorum ama php kısmı için şöyle bişey yapabilirsin.
dbden tarihe göre sıralayarak veriyi çekersen aşağıdaki fonksiyonlada 1 baştan 1 sondan veri çeker.
function oneFirstOneLast(array $data) : array
{
$return = [];
$total = count($data);
for($i = 0; $i < $total; $i++)
{
if($i % 2 !== 0)
{
array_push($return, array_values(array_reverse($data))[0]);
unset($data[array_reverse(array_keys($data))[0]]);
}
else
{
array_push($return, array_values($data)[0]);
unset($data[array_keys($data)[0]]);
}
}
return $return;
}