php 翻页代码执行效率的问题
当数据量很大(超过50万条)的时候,我需要让每页请求12条返回数据.下面的代码是否有效率?if(isset($_GET['pageNum_ua'])){$pageNum_...
当数据量很大(超过50万条)的时候,我需要让每页请求12条返回数据.下面的代码是否有效率?
if (isset($_GET['pageNum_ua'])) {
$pageNum_ua = $_GET['pageNum_ua'];
}
$startRow_ua = $pageNum_ua * $maxRows_ua;
mysql_select_db($database_sohu, $sohu);
$query_ua = "SELECT * FROM tablex ";
$query_limit_ua = sprintf("%s LIMIT %d, %d", $query_ua, $startRow_ua, $maxRows_ua);
$ua = mysql_query($query_limit_ua, $sohu) or die(mysql_error());
$row_ua = mysql_fetch_assoc($ua);
if (isset($_GET['totalRows_ua'])) {
$totalRows_ua = $_GET['totalRows_ua'];
} else {
$all_ua = mysql_query($query_ua);
$totalRows_ua = mysql_num_rows($all_ua);
}
$totalPages_ua = ceil($totalRows_ua/$maxRows_ua)-1;
$queryString_ua = "";
if (!empty($_SERVER['QUERY_STRING'])) {
$params = explode("&", $_SERVER['QUERY_STRING']);
$newParams = array();
foreach ($params as $param) {
if (stristr($param, "pageNum_ua") == false &&
stristr($param, "totalRows_ua") == false) {
array_push($newParams, $param);
}
}
if (count($newParams) != 0) {
$queryString_ua = "&" . htmlentities(implode("&", $newParams));
}
}
$queryString_ua = sprintf("&totalRows_ua=%d%s", $totalRows_ua, $queryString_ua); 展开
if (isset($_GET['pageNum_ua'])) {
$pageNum_ua = $_GET['pageNum_ua'];
}
$startRow_ua = $pageNum_ua * $maxRows_ua;
mysql_select_db($database_sohu, $sohu);
$query_ua = "SELECT * FROM tablex ";
$query_limit_ua = sprintf("%s LIMIT %d, %d", $query_ua, $startRow_ua, $maxRows_ua);
$ua = mysql_query($query_limit_ua, $sohu) or die(mysql_error());
$row_ua = mysql_fetch_assoc($ua);
if (isset($_GET['totalRows_ua'])) {
$totalRows_ua = $_GET['totalRows_ua'];
} else {
$all_ua = mysql_query($query_ua);
$totalRows_ua = mysql_num_rows($all_ua);
}
$totalPages_ua = ceil($totalRows_ua/$maxRows_ua)-1;
$queryString_ua = "";
if (!empty($_SERVER['QUERY_STRING'])) {
$params = explode("&", $_SERVER['QUERY_STRING']);
$newParams = array();
foreach ($params as $param) {
if (stristr($param, "pageNum_ua") == false &&
stristr($param, "totalRows_ua") == false) {
array_push($newParams, $param);
}
}
if (count($newParams) != 0) {
$queryString_ua = "&" . htmlentities(implode("&", $newParams));
}
}
$queryString_ua = sprintf("&totalRows_ua=%d%s", $totalRows_ua, $queryString_ua); 展开
2个回答
2011-09-11
展开全部
楼上就以傻Jb。
就查询而言这个还是能应付的,查询不像写入会独占整个表。
如果像了解更多,你可以参考一下discuz或者phpwind,这些程序它们都考虑了大数据查询与写入方面的问题。
就查询而言这个还是能应付的,查询不像写入会独占整个表。
如果像了解更多,你可以参考一下discuz或者phpwind,这些程序它们都考虑了大数据查询与写入方面的问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询