从我的 json 文件中获取数据以显示在我的 blade.php 中

Get data from my json file to show in my blade.php

大家好

我有一个项目,其中的一些基本数据存储在 JSON 文件中。我的 traits 文件夹中还有一个函数可以读取数据并将其放入数组中。我的问题是我不知道如何通过控制器和路由从特征中获取这个数组,然后用它在我的 blade.php 视图中显示数据。

注意:路线有效,特征中的功能已经可用。

控制器:

public function index()
  {
      $jsonArray=$this->read_data('genre.json');
      return view('genre.index')->with('genresArray', $jsonArray );
  }  

特质:

  public static function read_data($json_file): mixed
 {

    $file_data = array();
    $file_data=json_decode(file_get_contents(base_path('storage/data/'.$json_file)),true);
    return $file_data;
}

查看:

<?php echo $genresArray['genre']?>

jSonFile:

jSon File:
[{"genre":"Action","recordId":"8889d8017ba519b48710c1fa6cbe40b6"}, 
    {"genre":"Romance","recordId":"8ed28b04ef0ccc3ea2caa6265c3b36ec"},
    {"genre":"Sci-Fi","recordId":"85ed64f9b41d1984d4272ed6041af204"},
    {"genre":"Thriller","recordId":"c0d50ced298b85a1b92748dc7f05ac47"},
    {"genre":"Comedy","recordId":"3608cdef8df2b671defa5c1a5bad3f63"},
    {"genre":"Family","recordId":"cc52b3c8bc56921a15592b7682b07c52"}
  ]

错误:未定义数组键“流派”

首先,例如将特征导入您的控制器 Class。假设(FileReadProcessor 是你的特征的名称)

use App\Utils\Traits\FileReadProcessor;

class FileReaderControllerr extends Controller{
//this is important 
use FileReadProcessor;

private function index(Request $request){

  return View::make('viewPage')->with('genresArray', self::read_data());

}

}

在视图上,您​​可以根据文件的内容使用 foreach 访问它。

For instance 
@foreach ($file_array as $item)
    {{$item['genre']}}
    {{$item['recordId']}}
@endforeach

如果您确定 return 值中有元素,您可以回显 file_array[0]['genre'](因为数组是 returned)而且你不想迭代

<?php echo $genresArray[0]['genre']?>

请注意:您特征中的混合实例仅适用于 php 8.0.0 >