Php 循环在查询中返回一个结果

Php 循环在查询中返回一个结果,php,codeigniter-3,Php,Codeigniter 3,我试图在CodeIgniter中从数据库中获取数据。但是这个循环只返回一个循环 $userchatData = $this->db->get($this->db->dbprefix('usres_chat'))->result_array(); foreach($userchatData as $key => $userdata) { $userdatas[]= array( 'chat_id' =>

我试图在CodeIgniter中从数据库中获取数据。但是这个循环只返回一个循环

$userchatData = $this->db->get($this->db->dbprefix('usres_chat'))->result_array();

 foreach($userchatData as $key => $userdata)
 {
       $userdatas[]= array(
                  'chat_id' => $userdata['chat_id'],
                  'chat_from' => $userdata['chat_from'],
                  'created_date' => $userdata['created_date']
           );
 }
 $data['ChatdatabyId'] = $userdatas;
 $data['responseCode'] = '200';

 $data['responseMessage'] = 'User listing successfully';

 echo json_encode($data);

您需要定义
$userdatas=array()在循环之外。它位于循环内部,这就是它重写数据并返回最后一条记录的原因

$userchatData = $this->db->get($this->db->dbprefix('usres_chat'))->result_array();
  $userdatas = array();
  foreach($userchatData as $key => $userdata){
  $userdatas[]= array(
                 'chat_id' => $userdata['chat_id'],
                 'chat_from' => $userdata['chat_from'],
                 'created_date' => $userdata['created_date']
                 );
  }
   $data['ChatdatabyId'] =$userdatas;
   $data['responseCode'] = '200';
   $data['responseMessage'] = 'User listing successfully';
   echo json_encode($data);

希望这将帮助您:

$userchatData = $this->db->get($this->db->dbprefix('usres_chat'))->result_array();

foreach($userchatData as $key => $userdata)
{
    $userdatas[$key]['chat_id'] = $userdata['chat_id'];
    $userdatas[$key]['chat_from'] = $userdata['chat_from'];
    $userdatas[$key]['created_date'] = $userdata['created_date'];
}

/*print_r($userdatas); output here*/

$data['ChatdatabyId'] = $userdatas;
$data['responseCode'] = '200';

$data['responseMessage'] = 'User listing successfully';
}

echo json_encode($data);

更新完整函数,json_encode上面还有一个额外的}我不理解您遇到的问题。您能否共享数组中的数据,以及您希望该循环执行的操作;以及将数据数组分配给$userdatas[];它创建索引0、1、2等等。$userdatas[0]=$data、$userdatas[1]=$data、$userdatas[2]=$data等等。pradeep@pradeep此代码显示错误意外“=>”很抱歉,应该是=>不是=>我的错误复制粘贴错误只是好奇,是我的代码不适用于您,有什么问题吗