在Yii2中获取模型属性的类型

tre*_*der 5 php metadata yii yii2

如何在Yii2中检查模型属性的类型(列类型)?

这个旧的Yii论坛答案给了我一个结论,在Yii1我可以使用类似的东西:

$model->getMetaData()->columns['attribute-name']->type;
Run Code Online (Sandbox Code Playgroud)

但我没有成功将此解决方案移植到Yii2.有人可以帮忙吗?

cet*_*ver 6

您可以使用:

$model->getTableSchema()->getColumn('attr')
Run Code Online (Sandbox Code Playgroud)

要么:

$model->getTableSchema()->columns['attr']
Run Code Online (Sandbox Code Playgroud)

然后阅读dbType,phpType或者type,根据你正在寻找的类型......

例如:

$model->getTableSchema()->columns['attr']->type
Run Code Online (Sandbox Code Playgroud)