zoukankan      html  css  js  c++  java
  • url参数的分解与组合 && 分页功能

    url参数的分解与组合:

    需求来源:分页功能中需要动态更改page参数。

    实现:2个重要函数

    1. 分解

    1 parse_str(str, [array]);
    2 
    3 /*
    4 str: url字符串, array: 结果
    5 例:
    6 str : "id=1&page=2"
    7 得array:
    8 array["id"] = 1, array["page"] = 2

    2. 组合

    1 $str = http_build_query($array);
    2 // 与前者互逆

    参考:http://www.jb51.net/article/23787.htm

    下面是分页功能:

     1     function setUrl($url, $ans, $page, $str){
     2         $ans["page"] = $page;
     3         $url = $url.'?'.http_build_query($ans);
     4         echo "<a href='$url'>$str</a>		";
     5     }
     6     function viewPageBar($page, $total){
     7         $url = "http://".$_SERVER ['HTTP_HOST'].$_SERVER['PHP_SELF'];        //URL 地址 
     8         parse_str($_SERVER["QUERY_STRING"], $ans);                            //URL 参数转换: 前者:string -> 后者:数组变量
     9         $lpage = $page-1>=1? $page-1: $page;
    10         $rpage = $page+1<=$total? $page+1: $total;    
    11         echo "<div>";
    12         setUrl($url, $ans, 1, "首页");
    13         setUrl($url, $ans, $lpage, "前一页");
    14         for($d=-3; $d<=3; $d++){
    15             $tmp = $page+$d;
    16             if($tmp>=1 && $tmp<=$total)
    17                 setUrl($url, $ans, $tmp, "$tmp");
    18         }
    19         setUrl($url, $ans, $rpage, "后一页");
    20         setUrl($url, $ans, $total, "尾页");
    21         echo "</div><br/><br/>";
    22     }
    View Code
  • 相关阅读:
    后端写前端用什么框架
    什么是互联网
    数据的意义
    LR特征维数特别大实时计算问题
    一次线上服务线程数飙到8000
    jsoup 解析html
    做研究的方式
    推荐系统架构文章
    如何识别广告评论
    运营和做事方式
  • 原文地址:https://www.cnblogs.com/fashare/p/3959875.html
Copyright © 2011-2022 走看看