How to select all column name from a table in laravel?
Solution 1:
You can get all columns name by simply doing that...
use Illuminate\Support\Facades\Schema;
use Illuminate\Support\Facades\DB;
public function getTableColumns($table)
{
return DB::getSchemaBuilder()->getColumnListing($table);
// OR
return Schema::getColumnListing($table);
}
Solution 2:
Get Table Name From Model
$product = new Product;
$table = $product->getTable();
print_r($table);
Get Table Column Name From Model
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Product extends Model
{
public function getTableColumns() {
return $this->getConnection()->getSchemaBuilder()->getColumnListing($this->getTable());
}
}
Now you will get all columns of "products" table and if you need it in controller then you can get it by following way :
$product = new Product;
$columns = $product->getTableColumns();
print_r($columns);