2014-07-26 54 views
0

我有一個模型,用於查詢學生註冊的科目。學生可以有一個從零到任何正數的主題。然後我會將它傳遞給我爲每個主題製作一個div的視圖。你如何建議我會這樣做?這裏是我的模型代碼:在codeigniter中迭代整個數組

public function getAllSubjects($username){ 
     $this->db->select('student.username, subjects.subject_name, teacher.firstname as TeachersFirstName, teacher.surname as TeacherSurname'); 
     $this->db->from('users student'); 
     $this->db->join('student_subjects', 'student.username = student_subjects.student_username', 'inner'); 
     $this->db->join('subjects', 'student_subjects.subject_id = subjects.subject_id', 'inner'); 
     $this->db->join('users teacher', 'subjects.teacher_username = teacher.username', 'inner'); 
     $this->db->where('student.username', $username); 
     $studentSubjQuery = $this->db->get('users'); 
    } 

編輯: 現在我還沒有嘗試過任何事情。我只是不知道在將結果數組傳遞給視圖時,我將如何迭代數組。我過去做過。我用foreach來循環遍歷結果。我在香草php中做過,並且視圖與php代碼混合 - 這很醜陋。我爲數組中的每個結果回顯s。現在,我想在codeigniter中做到這一點,但對於MVC框架而言,我真的不知道如何做到這一點。

+0

問題描述似乎有點你嘗試過什麼都沒有vague..what工作? – raidenace

回答

0

您可以遍歷這些結果無論是作爲一個對象:

foreach ($studentSubjQuery->result() as $row) { 

} 

或數組:

foreach ($studentSubjQuery->result_array() as $row) { 

} 
+0

我會在控制器,視圖或模型中執行此操作嗎?我不知道我將如何在我的視圖中使用它。 – DirkJan

+0

通常你會在模型中這樣做......除非你想在不同的控制器中獲得不同的結果。最簡單的方法是返回結果'return $ studentSubQuery-> result();'(或'result_array()') –

+0

然後,在調用該函數之後,我會通過$ data將它傳遞給視圖,對吧?那麼,我將如何爲視圖中的每個結果創建一個div? – DirkJan