Yii2 Model fields是一个非常好用的方法。经常会使用到它。
只有在$model->toArray(),时才能使用。
下面介绍Yii2 Model fields方法的一些常用的使用场景。
1、修改字段名称
接口规范使用驼峰式命名,而数据表字段一般是使用蛇型命名方式。这时就可以使用如下方法转换了。
| 123456 | public function fields(){return [ 'email_address' => 'emailAddress',];} |
2、删除一些包含敏感信息的字段
| 123456 | public function fields(){$fields = parent::fields();unset($fields['auth_key'], $fields['password_hash'], $fields['password_reset_token']);return $fields;} |
3、增加字段
增加model中不存在的字段
| 123456 | public function fields (){$fields = parent::fields();$fields['name'] = '';return $fields;} |
4、修改字段值,可以用于字段脱敏等
通过匿名函数可以修改字段值
| 123456 | public function fields (){$fields = parent::fields();$fields['created_at'] = function(){return date('Y-m-d H:i:s', $this->created_at);};return $fields;} |
总结起来:可以修改字段名、字段值、删除字段、增加字段。
