THINKPHP更新数据库时,如何正确判断更新是否成功?
如题,以下代码即为THINKPHP正确判断数据库是否更新成功:?
$Model?=?D(‘Blog’);
$data[‘id’]?=?10;
$data[‘name’]?=?’update?name’;
$result?=?$Model->save($data);
if?(?false?!==?$result?){
????$this->success(‘更新成功!’);
}else{
????$this->error(‘更新失败!’);
}
在这里需要用 !== false 来判断更新是否成功,因为save方法返回值是更新操作影响的记录数,有可能影响的记录数为0,但却更新成功的。
原因:因为当你表单数据未做任何修改,即你需要更改的和原来的一样,这时影响条数也是0,你这样就算更新失败了。这应该叫做没有更新任何数据,而不叫更新失败。
标签:THINKPHP