php更新mysql后获取影响的行数发生异常解决方法
更新时间:2013年03月28日 14:50:35 作者:
mysql_affected_rows函数当UPDATE前后的数据一样时会返回异常值,接下来为大家介绍个简单的解决方法感兴趣的朋友可以参考下哈
从manual上知道了mysql_affected_rows函数当UPDATE前后的数据一样时会返回异常值,
下面有个方便的解决办法,从官方munual上看到 bdobrica at gmail dot com 留言的:
As a solution to the problem pointed in the post reffering to mysql_affected_rows() returning 0 when you are making an update query and the fields are not modified although the query is valid, i'm posting the following function. It is very simple and based on a previous post.
function mysql_modified_rows () {
$info_str = mysql_info();
$a_rows = mysql_affected_rows();
ereg("Rows matched: ([0-9]*)", $info_str, $r_matched);
return ($a_rows < 1)?($r_matched[1]?$r_matched[1]:0):$a_rows;
}
PS:因为这个小问题折腾了半天,感觉php真是太不清晰了
下面有个方便的解决办法,从官方munual上看到 bdobrica at gmail dot com 留言的:
As a solution to the problem pointed in the post reffering to mysql_affected_rows() returning 0 when you are making an update query and the fields are not modified although the query is valid, i'm posting the following function. It is very simple and based on a previous post.
复制代码 代码如下:
function mysql_modified_rows () {
$info_str = mysql_info();
$a_rows = mysql_affected_rows();
ereg("Rows matched: ([0-9]*)", $info_str, $r_matched);
return ($a_rows < 1)?($r_matched[1]?$r_matched[1]:0):$a_rows;
}
PS:因为这个小问题折腾了半天,感觉php真是太不清晰了
相关文章
php中使用__autoload()自动加载未定义类的实现代码
当PHP引擎遇到未实例化的类时就会触发这个方法,当然你的php代码中要用到__autoload()才可以哦2013-02-02
Laravel模板引擎Blade中section的一些标签的区别介绍
这篇文章主要介绍了Laravel模板引擎Blade中section的一些标签的区别介绍,本文讲解了@yield 与 @section、@show 与 @stop、@append 和 @override的区别,需要的朋友可以参考下2015-02-02
PHP中new static() 和 new self() 的区别介绍
这篇文章主要介绍了PHP中new static() 和 new self() 的区别介绍,需要的朋友可以参考下2015-01-01


最新评论