PHP 在model层查询数据库传到前端

PHP中model层各封装X轴,Y轴,并在控制层输出 在控制层的代码已经写好 就是不知道model层的数据该怎么传到控制层
这是我的model层

<?php
namespace App\Model\model;
use DB;

class modelData{
public function change($type, $date) {
      
         if(!empty($type) && !empty($action) && !empty($plane) && empty($instrument)){

          $dataSets = [
            ["X_data" => ["TK5-01","TK5-02","TK5-03","TK5-04","TK5-05"], "Y_data" => []],
            ["X_data" => ["TK5-06","TK5-07","TK5-08","TK5-09","TK5-10"], "Y_data" => []],
            ["X_data" => ["TK5-11","TK5-12","TK5-13","TK5-14"], "Y_data" => []],
            ["X_data" => ["TK5-15","TK5-16"], "Y_data" => []],
            ["X_data" => ["TK5-17","TK5-18"], "Y_data" => []],
            ["X_data" => ["TK5-19"], "Y_data" => []]
            ]; //X轴数据
 
foreach ($dataSets as $key => $dataSet) {
    $X_data = $dataSet["X_data"];
    $Y_data = $dataSet["Y_data"];

    foreach ($X_data as $value) {
        $result = DB::table('instruments_tuokong')->select('variation')->orderBy('create_time', 'desc')->where('code', $value)->first();
        $Y_data[] = $result->variation; //Y轴数据
    }
}
        
         }


        return array($X_data,$Y_data);
    }

}

?>


控制层的代码

 public function getChartData(Request $request) {

  $type1=$request->input('type');
  $type=trim($type1);
  $date1=$request->input('date');
  $date=trim($date1);
  //1.校验
  if (($type == null || empty($type)) || ($date ==null || empty($date))){ //为空
      var_dump("error!");
  }else{ //不为空
    dump($type);
    dump($date);
    $model = new modelData();
    $chartData = $model->change($type, $date);

  }
}

以下答案由GPT-4.0Plus大模型与博主A努力中.......共同编写:
在PHP的MVC框架中,model层通常用于查询数据库和封装数据。要从model层将数据传递到前端,我们可以:

  1. 在model层查询数据库,获取数据集合
    例如,在MySQL中查询users表:
php
$users = $this->db->query("SELECT * FROM users");

  1. 将查询结果 encode 为 JSON 格式
    使用 PHP 的 json_encode() 函数可以将数组或对象格式的数据编码为 JSON 字符串:
php 
$users = json_encode($users->result_array());

  1. 将 JSON 字符串返回给控制器
    在model方法的末尾使用 return 将数据返回:
php
return $users; 

  1. 在控制器中接收数据,并载入视图
    在控制器的方法中,我们可以获取model返回的数据,并在载入视图时将其作为参数传递:
php
$users = $this->User_model->get_users();
$this->load->view('user_list', ['users' => $users]);

  1. 在视图中处理并输出数据
    在视图(user_list.php)中,我们可以直接迭代 $users 并输出:
php
<?php foreach ($users as $user): ?>
<div><?= $user['name']; ?></div>
<?php endforeach; ?> 


  1. 在浏览器中查看渲染后的页面
    至此,我们已经完成了从 model 层查询数据库,并将 JSON 格式的数据传递到前端视图的过程。前端可以直接使用 PHP 编码后的 JSON 字符串,无需再次请求 API 接口。