示例#1
0
 /**
  * @param $selectSql "select id,name,code FROM city where id>10"
  * @param string $url "getCity-{page}.php?id=10"
  * @param int $pageNo 当前页
  * @param int $pageSize 每页记录数
  * @return PageUtil 分页对象
  */
 public function queryWithPage($selectSql, $url = '', $pageNo = 1, $pageSize = 20)
 {
     $sql = trim($selectSql);
     $start = (intval($pageNo) - 1) * intval($pageSize);
     $start = $start > 0 ? $start : 0;
     $sql = $sql . " limit {$start},{$pageSize}";
     $dataList = $this->getAll($sql);
     $newStr = substr($sql, stripos($sql, "FROM"));
     $orderLength = stripos($newStr, "ORDER ");
     if ($orderLength) {
         $countSql = "SELECT count(1) " . substr($newStr, 0, $orderLength);
     } else {
         $countSql = "SELECT count(1) " . $newStr;
     }
     $totalCount = $this->getColumn($countSql);
     $pageUtil = new cls_page($url, $totalCount, $pageNo, $pageSize);
     $pageUtil->setList($dataList);
     return $pageUtil;
 }