首页 > php教程 > PHP源码 > 正文

经典分类筛选

PHP中文网
发布: 2016-05-23 08:39:07
原创
2024人浏览过

2.png

url.php

<?php
header('Content-Type:text/html;charset=utf-8');
 
/**
 * 生成分类信息中的筛选菜单
 * @param $field   字段名称
 * @param $modelid  模型ID
 * @param $diyarr 数据包
 * @param $isall 是否显示全部
 */
function info_filters($field = '',$diyarr = array(),$groups=array(),$isall = 1) {
  $options = $diyarr;
  $field_value = isset($_GET[$field])?intval($_GET[$field]):'';
  foreach($options as $k=>$v) {
    $option[$k]['name'] = $v;
    $option[$k]['value'] = $k;
    $option[$k]['url'] = info_filters_url($field,array($field=>$k),$groups);
    $option[$k]['menu'] = $field_value == $k ? '<a href="#" class="hover">'.$v.'</a>' : '<a href="'.$option[$k]['url'].'">'.$v.'</a>';
  }
  if ($isall) {
    $all['name'] = '全部';
    $all['url'] = info_filters_url($field,array($field=>''),$groups);
    $all['menu'] = $field_value == '' ? '<a href="#" class="hover">'.$all['name'].'</a>' : '<a href="'.$all['url'].'">'.$all['name'].'</a>';
    array_unshift($option,$all);
  }
  return $option;
}
 
 
 
/**
 * 构造筛选URL
 */
function info_filters_url($fieldname, $array=array(),$fields=array(), $isphp = 0) {
  if(empty($array)) {
    $array = $_GET;
  } else {
    $array = array_merge($_GET,$array);
  }
  //TODO
  if(is_array($fields) && !empty($fields)) {
    ksort($fields);
    $urlpars ='';
    foreach ($fields as $_v=>$_k) {
        $urlpars .= '&'.$_v.'={$'.$_v.'}';
    }
  }
   $urlrule ='urlurl.php?m=content&c=index&a=lists&catid=1'.$urlpars;
  //根据get传值构造URL
 if (is_array($array)) foreach ($array as $_k=>$_v) {
    if($_k=='page') $_v=1;
    $_findme[] = '/{\$'.$_k.'}/';
    $_v = intval($_v);
    $_replaceme[] = $_v;
  }
  //构造排除该字段名称的正则
  $filter = '';
  $_findme[] = '/{\$'.$filter.'([a-z0-9_]+)}/'; 
  $_replaceme[] = '';
  $urlrule = preg_replace($_findme, $_replaceme, $urlrule);
  return $urlrule;
}
?>
<style>
a{ color:#333333;}
.hover{ color:#FF0000;}
</style>
 <div class="yk_01 fix">
             
            <div class="yy1">
               <?php 
                   $groups = array(
                                 'dest'=>array(1=>'北京',2=>'上海',3=>'天津'),
                                 'action'=>array(1=>'香港',2=>'澳门',3=>'台湾')
                          );
                   $dest_list = info_filters('dest',$groups['dest'],$groups);
                   $action_list = info_filters('action',$groups['action'],$groups);
                   echo '<span>出发城市:</sapn>';
                   foreach($dest_list as $val){
                   echo $val['menu'].'  ';
                   }
                   echo '<br/><span>目标城市:</sapn>';
                   foreach($action_list as $val){
                   echo $val['menu'].'  ';
                   }
               ?>
            </div>
        </div>
登录后复制
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号