框架: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
编辑:固定方法相同的方法名称;
这是相当我想要的很多。但我会等待更多... –
这*是*你想要的;) –
等待更多什么?这是正确的答案:) –