我可以使用以下方法返回数据库表中的列数组;
$column_names = DB::getSchemaBuilder()->getColumnListing('tablename');
但是有没有一种方法可以返回每个特定列上的接受值?例如,我有很多enum
列,我想返回这些列(可能在多维数组中),以便我可以在单元测试中使用它。
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
}