public static function addColumns($tableName, array $columnDefinitions)
{
return ['up' => function (Builder $schema) use($tableName, $columnDefinitions) {
$schema->table($tableName, function (Blueprint $table) use($columnDefinitions) {
foreach ($columnDefinitions as $columnName => $options) {
$type = array_shift($options);
$table->addColumn($type, $columnName, $options);
}
});
}, 'down' => function (Builder $schema) use($tableName, $columnDefinitions) {
$schema->table($tableName, function (Blueprint $table) use($columnDefinitions) {
$table->dropColumn(array_keys($columnDefinitions));
});
}];
}