框架:CI笨傳遞數組,而不是對象
現狀:
我有這個笨非常令人沮喪的問題。
這裏是代碼: (控制器)
class sampleController extends CI_Controller {
function index() {
data['message'] = 'something';
data['js'] = array('script1.js', 'script2.js');
data['css'] = array('style1.css', 'style2.css', 'style3.css');
$this->load->model('user_model');
$user = $this->input->post('username');
data['user_id'] = $this->user_model->getUserIdByUsername($user);
data['user_info'] = $this->user_model->getAllUserInfo($user);
$this->load->view('someview', $data);
}
}
還好還有我的控制,我通過幾個數據,如js
,css
,user_id
和user_info
這裏是我的模型的方法:
getUserIdByUsername($user) {
$this->db->select("id");
$this->db->where("username", $user);
$result = $this->get("users");
return $result->row();
}
getAllUserInfo($user) {
$this->db->select("first_name, last_name, age");
$this->db->where("username", $user);
$result = $this->get("users");
return $result->row();
}
問題發生在視圖中,當我嘗試acc ESS已經由控制器
- ,如果我試圖呼應
$message
通過了所有的變量,它會正確地呈現出這樣=something
,如果我試圖在每個使用的foreach
循環$js
和$css
這樣foreach($js as $key){//echo script here}
foreach($css as $key){// echo link rel stylesheet here}
它會呈現出正確喜歡<script src='script1.js'></script><script ...></script>
迭代所有$js
上也是如此css
,但如果我試圖呼應了$ USER_ID。 。它不會,因爲。它是一個對象。
所以解決這個問題我做了什麼。 。 <?php foreach($user_id as $id){} ?>
我可以在這種情況下回顯$ id 是否有反正,這樣我就可以在沒有那些凌亂的foreach的情況下回顯它。
我明白,當我來到$user_info
,這是很好的做到這一點foreach($user_info as $key => $value){$info[$key]=$value}
但有沒有更好的方式,在視圖中做到這一點?
也許而不是一個對象,數組將在視圖可以使用之前發送?
感謝muchs
編輯:固定方法相同的方法名稱;
這是相當我想要的很多。但我會等待更多... –
這*是*你想要的;) –
等待更多什麼?這是正確的答案:) –