时间:2021-07-01 10:21:17 帮助过:3人阅读
$pageCount) $indexDisplay=$pageCount; if($indexDisplay<=0) { $pageview=$pageview." 首页 上一页 下一页 尾页 "; } else { //生成好url并且要兼容含有其他参数列表的url $url='http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']."?";//不带参数的url地址 $urlparams=$_SERVER['QUERY_STRING'];//URL地址的参数列表,这里需要把它转换成一个array $url=$url.$this->SplitStrForArray($urlparams).$this->showurl."=";//这里得到的url是除了pageindex之外的完整url可以用在分页的href上 if($pageIndex<=0)//假如选取的是第一页,则首页和上一页变灰色 { $pageview=" 首页 上一页 "; } else { $beforeIndex=$pageIndex-1; $beforeUrl=$url.$beforeIndex; $pageview=$pageview." 首页 上一页 "; } for($i=0;$i<$indexDisplay;$i++) { //加一个判断当前选区的页数获取焦点hobver if($i==$pageIndex) { $pageview=$pageview." ".($i+1).""; } else { $pageview=$pageview." ".($i+1).""; } } if($pageIndex==$pageCount-1)//假如选取的是第一页,则首页和上一页变灰色 { $pageview=$pageview." 下一页 尾页 "; } else { $nextIndex=$pageIndex+1; $nextHref=$url.$nextIndex; $lastIndex=$pageCount-1; $lastHref=$url.$lastIndex; $pageview=$pageview." 下一页 尾页 "; } } return $pageview; } /** * 处理url,把属于分页的pageindex=参数去掉,并返回 * @param string 原字符串 */ function SplitStrForArray($sourceStr) { if($sourceStr=="") return ""; $strarry= explode("&",$sourceStr); $newstr=""; foreach($strarry as $key){ if(explode("=", $key)[0] !=$this->showurl) { $newstr=$newstr.$key."&"; } } /*if($newstr!="") { $newstr= substr($newstr, 0,strlen($newstr)-1); }*/ return $newstr; }}?>
恩很不错了。加油!
php 提供了
parse_str 用于将 url 参数串转换为数组
http_build_query 由于从数组创建 url 参数串
php 提供有
$_REQUEST 数组,不必再从 $_SERVER['QUERY_STRING'] 串转换
删去 pageindex 也只需
unset($_REQUEST['pageindex']);
然后
$url = http_build_query($_REQUEST);
即可
谢谢楼上所有人,很多不了解,走了些弯路,你们提出的,我会查找资料认真学习的。