这是我的模特
<?php
class home_model extends CI_Model {
function login()
{
$q = $this->db->query('SELECT * FROM users');
$count = $q->num_rows();
if ($count > 0)
{
foreach ($q->result() as $row)
{
$data[]['username'] = $row->username;
$data[]['email'] = $row->email;
$data[]['sex'] = $row->sex;
$data[]['dob'] = $row->dob;
$data[]['mobile'] = $row->mobile;
}
return $data;
}
?>
这是我的控制器
<?php
if (!defined('BASEPATH'))
exit('No direct script access allowed');
class home extends CI_Controller
{
public function index()
{
$this->load->model('home_model');
$data['records'] = $this->home_model->login();
$this->load->view('home', $data);
}
}
我只能打印_r,这不是我想要的,我将如何回应这个?我不知道我应该在回声中使用什么格式,
echo($records[0]);
这种格式是我尝试的但它返回错误
遇到PHP错误
严重性:注意
消息:数组到字符串转换
文件名:views / home.php
行号:4数组
我该如何编码我的观点?
答案 0 :(得分:1)
首先,您的登录功能需要根据codeigniter进行更正。
function login() {
$q = $this->db->query('SELECT * FROM users');
$count = $q->num_rows();
if ($count > 0) {
return $q->result_array();
}
它将根据您的需要提供数组。
然后在视图中使用,你需要使用它。
假设您想要回显第一个用户名
echo $records[0]['username'];
这里$ records [0]是一个数组,因此您需要像上面提到的那样使用,对于其他字段也是如此。
答案 1 :(得分:0)
在您的观点中
foreach($records as $users)
{
echo $users['username'];
}
答案 2 :(得分:0)
使用以下过程
你的模态
function login()
{
$q = $this->db->query('SELECT * FROM users');
$count = $q->num_rows();
if ($count > 0)
{
return $q->result();
}
}
?>
控制器没有变化
观看
foreach ($records as $row)
{
$username = $row->username;
$email = $row->email;
$sex = $row->sex;
$dob = $row->dob;
$mobile = $row->mobile;
}
答案 3 :(得分:0)
使用内置函数print_r()
并提供数组是一个参数