使用Laravel Schema Builder返回列约束

时间:2016-03-15 17:05:59

标签: php laravel laravel-5.1

我可以使用以下命令返回数据库表中的列数组;

$column_names = DB::getSchemaBuilder()->getColumnListing('tablename');

但是有没有一种方法可以在每个特定列上返回接受的值?我有很多列enum例如,我想返回那些(可能是多维数组),所以我可以在单元测试中使用它。

1 个答案:

答案 0 :(得分:0)

getDoctrineColumn就是你想要的。你可以简单地使用下面的代码来获得你想要的东西:

$column_names = DB::getSchemaBuilder()->getColumnListing('tablename');
foreach($column_names as $c){
    $type = DB::connection()->getDoctrineColumn('tablename', $c)->getType()->getName();
    // do anything you want with your desired type
}