ОТВЕТ: Самое простое решение - вернуть массив данных, где первое значение - это имя таблицы, а второе - это коллекция lastRecords.Это выглядело бы примерно так:
$responseArray[0] = $table_name;
$responseArray[1] = $table_lastRecords;
return json_encode($responseArray);
Затем, по вашему мнению, вы должны проанализировать ваш ответ Json и позволить table_name = responseData [0] и lastRecords = responseData [1].Конечно, вы также можете использовать нечисловые индексы, чтобы сделать код более читабельным, например responseData ['table_name'], но эта семантика зависит от вас.
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ:
С учетом вышесказанного, есть несколько проблем с вашим кодом, на которые я должен обратить внимание.Вам следует лучше ознакомиться с запросами Eloquent, поскольку их правильное использование значительно упростит ваш код.Например, эти две строки:
$table_data = DB::table('users')->where('brand_id',$brand_id)->get();
$table_name = $table_data[0]->table_name;
Можно переписать так:
$table_name = User::where('brand_id',$brand_id)->first()->table_name;
Но это заставляет меня задать вопрос, есть ли только одна таблица на бренд?Если да, то почему вы храните эту информацию у пользователя, а не в таблице «брендов»?Наиболее разумным способом было бы иметь модель Brands, имеющую столбец table_name, и вы получите имя таблицы с помощью этого простого запроса:
$table_name = Brand::find($brand_id)->table_name;
Кроме того, вам следует избегать выполненияэтот тип работы в вашем файле маршрутов.Все, что не связано конкретно с МАРШРУТОМ пользователя, должно обрабатываться в контроллере или модели.Затем в вашем контроллере вы должны использовать модель User или Brand в своих запросах, импортируя App \ User и App \ Brand.