我需要从laravel表中获取列名。但我得到所有列的名称。如何从此表中获取一些需要的特定列名称?
我已经尝试过下面的代码来获取所有列的名称:
$columnName = DB::getSchemaBuilder()->getColumnListing('table');
它返回["id","name","email","phone_number","created_at","updated_at"]
但是我只寻找["name","email","phone_number"]
而不是全部("id","created_at","updated_at")
列。这就是我所说的特定列名称。
答案 0 :(得分:1)
您可以使用laravel collection的filter()
函数,即:
$columnNames = collect(DB::getSchemaBuilder()->getColumnListing('table'));
$columnNames = $columnNames->filter(function ($value, $key) {
return in_array($value, ['id', 'created_at', 'updated_at']) === false;
});