我正在尝试遍历两个连接的数据表。一个表是图像集合,另一个是图像。图像具有收集的外键。
我的问题是,我认为如何实现以下目标?
foreach ($collections as $collection) {
    echo '<ul>';
    foreach ($collection->image as $image) {
        echo '<li><img src="'.$image->url.'" /></li>';
    }
    echo '</ul>';
}
我目前在控制器中使用它:
class Collection extends CI_Controller {
    public function index()
    {
        $this->load->model('Collection_model');
        $data['collections'] = $this->Collection_model->get_latest_collections();
        $this->load->view('collection_view.php', $data);    
    }
}
并有以下型号:
class Collection_model extends CI_Model {
    function get_latest_collections()
    {
        $this->db->select('*');
        $this->db->from('photo');
        $this->db->join('collection', 'photo.collection_id = collection.id');
        $this->db->order_by("collection.date_created", "DESC");
        $query = $this->db->get();
        return $query->result();
    }
}
上面的问题是,当我遍历收集结果时,我实际上是直接遍历所有图像。我必须在视图中添加一些逻辑来检查集合 ID 是否已更改为放入 . 这意味着我不能使用 next() 和 prev() 来获取下一个和上一个集合,因为循环正在遍历图像并且 next() 和 prev() 给出下一个和上一个图像而不是下一个和上一个收藏。