[英]Accessing Multidimensional array with Codeigniter
好的,在我的Codeigniter项目中,我正在将多维数组传递给视图。 我遇到的问题是访问数组中的数据。 我使用print_r和var_dump来查看数组,并将其正确传递给视图,但是我最困难的时间访问其中的数据! 我收到此错误消息,“试图访问非对象的参数”。 有什么建议么?!
这是控制器:profile.php
<?php
class Profile extends CI_Controller {
public function __construct(){
parent::__construct();
$this->load->library('session');
//Get user data
$this->load->model('user_model');
}
public function user_lookup(){
//get usering users data
$email = $this->session->userdata('email');
//get profile users data
$username = $this->uri->segment(2,0);
$user = array(
'users' => $this->user_model->getUserData($email),
'profile' => $this->user_model->getUserDataWithUsername($username)
);
$this->load->view('profile_view', $user);
}
}
?>
这是接收数据的视图:profile_view.php
<!DOCTYPE html>
<html>
<body>
<?php
print_r($users[0]);
?>
</body>
</html>
我的print_r语句的输出是:
Array([家乡] =>拉斯维加斯[电子邮件] => johnmy@gmail.com [大学] =>加州大学伯克利分校[first_name] => Pete [last_name] => Smith [date] => 1992)1
根据您的代码:
$this->load->view('profile_view', $user);
这意味着您将提供数组$user
作为视图数据。 因此,在视图上$user
不再存在。
您只能在视图中使用它的元素:
<?php
echo $hometown;
echo $email;
?>
如果要在视图中使用$user
数组,请在控制器中使用此视图加载代码:
$this->load->view('profile_view', array('user' => $user ));
您可以在CodeIgniter中阅读有关视图的更多信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.