使用find(),select(),get(),all()等查询数据库时,返回的是一个模型对象,此时是不能直接操作的,需要我们转化成数组对象
使用toArray()方法,而我在使用时报错
网上查了好多资料,说是find()或者get()查询一条数据时可以直接使用toArray(),而返回多条数据时,不能直接使用toArray(),需要使用助手函数conllection或者类Conllection,但是并不起作用
并将数据库的时间字段create_time默认值设置成now()(CURRENT_TIMESTAMP),建表是为空,但是也没有用(建议设置默认值)
后来经过返回测试,发现原来是数据库配置项的问题,
'datetime_format' => false,
设置此项后,再使用toArray()就没问题,不过好像低于5.0.6版本的框架不行,建议使用相对高一点的版本
如果不行,对时间格式不进行转换
class SysConf extends Model{
protected $pk = 'id';
protected $table = 'sys_conf';
protected $auto = ['create_time'];
//返回原有数据 不自动进行时间转换
public function getCreateTimeAttr($time)
{
return $time;
}
}