簡體   English   中英

排序json數組如何導致codeigniter 4

[英]How sort json array result in codeigniter 4

如果介意,任何人都可以告訴我如何在 json 數組上按 created_at 排序。 我想要最新的評論在頂部,而不是底部。 這是我的代碼:

模型(插入和獲取評論數據):

    public function add_komen($data){
            return $this->komen->insert($data);
    }

    public function get_komen($id){
            return $this->komen->where('id_user', $id)->get()->getResultArray();
        
 }

控制器(獲取數據並使用視圖數組獲取結果):

public function do_add_komentar(){
        $data['nama_komentar'] = $this->request->getPost('nama');
        $data['isi_komentar'] = $this->request->getPost('komentar');
        $data['id_user'] = $_SESSION['id_user'];

        $update = $this->UndanganModel->add_komen($data);
        if($update){
            echo json_encode(array('status' => 'sukses','nama' => \esc($data['nama_komentar']),'komentar' => \esc($data['isi_komentar']) ));
        }else{
            echo json_encode(array('status' => 'gagal'));
        }
}

視圖(表單和獲取結果):

<input id="nama" type="text" class="form-control mt-2" placeholder="Nama Anda" required>
<textarea id="komentar" class="form-control" id="exampleFormControlTextarea1" placeholder="Pesan anda.." rows="3" required></textarea>
<button id="submitKomen" class="btn btn-primary btn-block" >Kirim</button>

<div class="layout-komen">              
                <?php  foreach($komen as $key => $data) { ?>
                <div class="komen" >
                    <div class="col-12 komen-nama">
                        <?= \esc($data['nama_komentar']); ?>
                    </div>
                    <div class="col-12 komen-isi">
                        <?= \esc($data['isi_komentar']); ?>
                    </div>
                </div>
                <?php } ?> 
</div>
    

您無需對 json 數組進行排序。 這可以通過在模型函數中對 created_at 進行排序以獲得結果來實現。 我假設 created_at 是您表中的列名。 如果不是,則將 created_at 替換為列名。 在這里查看代碼

 public function get_komen($id){

   return $this->komen->where('id_user', $id)->orderBy("created_at", "desc")->get()->getResultArray();
        
 }

檢查並回復

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM