- PHP code
//获取记录的总笔数 public function num_rows($results) { //$results参数是select_query($sql)的返回结果 if(!is_bool($results)) { //**********这个地方看不懂,为什么用is_bool()取反判断,这样有什么用? $num = mysql_num_rows($results); $this->write_log("获取的记录条数为".$num); return $num; } else { return 0; } }
------解决方案--------------------
鉴于下面有 $num = mysql_num_rows($results);
所以 if(!is_bool($results)) { 是错误的
不是逻辑类型,并不能说就一定是资源类型
------解决方案--------------------
mysql_query() 执行出错时返回 false(bool) 值。就是判断这个用的。
if(!is_bool($results)) { 如果非bool 值,则说明query 执行成功了,否则失败了。
------解决方案--------------------
值得注意的是参数$results
看你的函数,$results参数应该是数据库查询的结果。
这样的话,用is_bool判断查询是否为假就没有什么好奇怪的了.....