mysqli_num_rows($result)和 $sql = "select count(id) from `content`"; //$rs= mysql_query($sql); $rs= mysql_fetch_array(mysql_query($sql)); $total=$rs[0];
利用select count(*) ,出来的结果,只有一行,是利用MySQL自身算法进行计算的。
mysqli_num_rows则需要二次算:先将全部资料查询,然后通过mysqli_num_rows计算,是多行计算。
第一种是利用MySQL自身的COUNT()函数,第二种则通过PHP函数进行。
如果数据量非常非常大的话,第一种直接利用SQL语句计算的话会快一些,第二种相对会慢一些。
不过小数量级的数据表其实差异估计也看不出太大变化来,呵呵。
一般获取个数都是做分页用的,所以不光要查出个数,还要数据的内容个人感觉要看数据量多少了,如果数据量多用SELECT COUNT(),这样还要进行SELECT *查询如果数据量少,用mysql_num_rows(),这样少了一次查询等于,直接SELECT *完了后就mysqli_num_rows()行了。