解析器错误:语法错误,codeIgniter中意外的$ data(T_VARIABLE)
我是CodeIgniter的新手。当我尝试用控制器和视图和模型传递数据,我有这样的:
Syntax error: Unexpected '$data'(T_VARIABLE) in c:\xampp\htdocs\ci\application\controllers\users.php on line 10
这里是我的控制器users.php
代码:
<?php
class Users extends CI_Controller
{
public function show()
{
$data['results']=$this->user_model->get_users();
$this->load->view('user_view',$data);
}
}
?>
在views文件夹user_view.php
代码:
<body>
<?php
foreach($results as $object){
echo $object->username;
}
?>
</body>
在型号文件夹user_model.php
代码
<?php
class User_model extends CI_Model
{
public function get_users()
{
$query=$this->db->get('users');
return $query->result();
}
}
?>
我该如何解决这个错误?
为什么你的错误说c:\xampp\htdocs\ci\application\users.php
应该不是一直C:\ XAMPP \ htdocs中\ CI \应用\controller
\ users.php`
在你的控制器
public function show()
{
$data['results']=$this->user_model->get_users();
$this->load->view('user_view',$data);
}
在模型中
public function get_users(){
$query=$this->db->get('users');
$result = $query->result_array(); //added
return $result; //added
}
鉴于
<body>
<?php
foreach($results as $new_results) //changed
{
echo $new_results['username']; //changed
}
?>
</body>
感谢您的评论。我检查了它。但有同样的错误。 –
最新错误? –
错误是:严重性:解析错误;消息:语法错误,意外的'$ data'(T_VARIABLE);文件名:controllers/users.php –
您试图在您的视图访问错误ARRAY
。 在您的控制器阵列中是$data['results']
而不是$data['result']
。所以你需要在foreach
循环中访问$results
。
在你从
foreach($result as $object){
view
更改为
foreach($results as $object){
感谢您的意见。我改变了它,但仍然有相同的错误。 –
使用$results
在foreach循环和检查
感谢您的评论。我改变了它,并尝试但仍然有相同的错误。 –
首先,你必须加载模型:
$this->load->model('User_model','user_model');
然后你可以使用在该模型中定义的函数:
$this->user_model->get_users();
你在你的代码多了一个错误,即你没有加载功能
更新你的代码中加入下面一行显示的第一线模型()函数
$this->load->model('user_model');
好赶上 – Linus
感谢您的回复。我纠正了它。仍然有相同的错误。 –