Thinkphp getLastSql函数用法

如何判断一个更新操作是否成功:

$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,但是更新操作是成功的。所以一定是全不等于,否则!=这样子还是有可能返回错误的结果

可以看看dump($result)就明白了。

上面的例子折腾了半天。后来,用getLastSql函数查看的sql语句。更新记录为0。我的妈啊!后来,查看才知道thinkphp的save返回的时false。0和FALSE的全等(===),而不是相等(==)。

你可能感兴趣的:(thinkphp)