我需要从查询生成器结果中获取字段名。对于单个表我可以使用
DB::getSchemaBuilder()->getColumnListing('table_name');
,但我需要的是从查询生成器的结果。
DB::table('users as a')
->leftJoin('userwork AS uk','uk.WORK_ID', '=','a.WORK_ID')
->selectRaw("a. name ,uk.work_name as work ,concat('+',uk.work_phone) as phone")
->get();
我想提取属性名称以获得如下结果
['name','work','phone'];
在将查询生成器的第一个结果转换为数组后,我最终使用array_keys方法。
$db_fields=array_keys((array)$items->first());
你需要这样吗?
DB::table('users as a')
->leftJoin('userwork AS uk','uk.WORK_ID', '=','a.WORK_ID')
->select("a. name ,uk.work_name as work ,concat('+',uk.work_phone) as phone")
->get();
仅使用select. 你可以在你的控制器上写