用户
 找回密码
 入住 CI 中国社区
搜索
查看: 3802|回复: 1
收起左侧

分享一个stblog的查询参数传递的小优化

[复制链接]
发表于 2011-5-12 00:41:26 | 显示全部楼层 |阅读模式
stblog代码  application/controllers/admin/posts.php 796行
PHP复制代码
 
/** category filter */
        $category_filter = $this->input->get('category', TRUE);
        $category_filter = (!empty($category_filter)) ? intval($category_filter) : 0;
 
        if(!empty($category_filter))
        {
            $query[] = 'category='.$category_filter;
        }
 
        /** title filter (posts search) **/
        $title_filter = strip_tags($this->input->get('keywords',TRUE));
        if(!empty($title_filter))
        {
            $this->_data['page_title'] = '搜索文章:'. $title_filter;
            $query[] = 'keywords='.$title_filter;
        }
      ..............
     $this->dpagination->target(site_url('admin/posts/manage?'.implode('&',$query)));
 
复制代码

可以替换成
PHP复制代码
 
//获取查询的参数
$url_query=$_SERVER['QUERY_STRING'];
        if(!empty($url_query)){
           //正则替换&p=数字
            $url_query=preg_replace('/&p=(\d+)/','',$url_query);
        }
 
复制代码

就可以直接获取查询的参数
不用再用数组保存
然后将跳转的target替换成.
$this->dpagination->target(site_url('admin/posts/manage?'.$url_query));

省去了一小步....
本人小白,别喷...谢谢!!!
其实很多查询地方都可以使用这个正则替换,方便一些吧.

评分

参与人数 1威望 +5 收起 理由
Hex + 5 我很赞同

查看全部评分

 楼主| 发表于 2011-5-12 00:42:48 | 显示全部楼层
我没有给出详细的替换代码...
大家可以看看代码然后自己动手替换一下...

本版积分规则