有没有办法获取所有列名,然后计算出列的类型?例如,ENUM、VARCHAR、TINYINT等,特别是对于ENUM,ENUM的不同组件?
我在这里发现了一些东西(http://www.phpactiverecord.org/docs/ActiveRecord/Column)
不知道如何从文档中获取类型?
列出列名及其类型:
$columns = MyModel::table()->columns;
foreach ($columns as $column) {
echo "{$column->name} - {$column->raw_type} <br>'n";
}
其中MyModel
是模型类的名称。
这将输出DB模式中定义的"原始"数据库类型。也可以将$column->type
用于ActiveRecord内部表示中的规范化类型。
请在此处和此处查看AR来源。