save 方法更新数据
save方法的更新判断失败用 false === 来判断, 否则执行都是成功的,只是如果为0 表示没有更新任何记录(就是你说的更新值和原来值相同的情况)。
发生错误返回false,未更改记录返回0,更改成功就返回更新成功的行数
$result = $Model ->save( $data );?? if ( false !== $result ){?? ???? $this ->success( '更新成功!' );?? } else {?? ???? $this ->error( '更新失败!' );?? }? |
需要用 !== false 来判断更新是否成功,因为save方法返回值是更新操作影响的记录数,有可能影响的记录数为0,但却更新成功的。
? | if ( $result >0 || $result ===0 ){?? //成功?? } else {?? //失败?? } |
?
? ? add
? ? 如果写入结果$result数据非法则返回false,如果是自增主键 $result则返回主键值,否则返回1。
? ? 所以只要判断添加返回的值大于0就代表添加成功,否则为添加失败
?
? ?delete
? ?发生错误返回false,否则返回删除成功的个数,0代表没有删除成功一个
所以判断条件只要delete !==false就代表删除成功 ?或者判断删除成功的条数大于0
?
? ?select find
? ?发生错误为false,没有结果就返回null,有结果就是数组(select) ?find() 返回的是一个一维数组
? find 返回 array("id"=>1,"name"=>"小飞");
? select 返回 array(0 =>array("id"=>1,"name"=>"小飞"))
? 没有数据都返回null,查询错误都返回false