Argument 1 passed to think\db\Query::getFieldType() must be of the type string, int given, called in xxxxxxxx
super
2021-10-14 15:29
11582
今天thinkphp6.0又出'bug'啦!
// 申请
public function apply($user_id, $icon_id)
{
// 查询申请记录
$log = $this
->where([
['user_id', '=', $user_id],
['icon_id', '=', $icon_id]
])
->field(['id'])
->find();
if ($log) {
$result = $this
->where($this->pk, $log['id'])
->inc('num')
->update([
'apply_time' => time()
]);
return ($result !== false) ? true : false;
} else {
$result = $this
->insertGetId([
['user_id', '=', $user_id],
['icon_id', '=', $icon_id],
['time', '=', time()],
['num', '=', 1]
]);
return $result ? true : false;
}
}
最后发现还是自己的问题, 看上面代码的 else 模块, 添加数据时,其实应该是一维数组, 而我写错成了二维数组(因为复制了上面的数组), 所以报错了。
如果你也报错了的话, 记得再仔细审查一下代码!!!!!!
0 条讨论