这几天在用ThinkPHP做系统,搜索页有个数组参数提交

<input class="params_t" name="t[]" type="checkbox" value="email">
<input class="params_t" name="t[]" type="checkbox" value="name">

提交后的URL是

t是个多选项 checkbox

/search.html?q=30&t%5B%5D=a&t%5B%5D=b&pagesize=20

有多页数据的时候

用ThinkPHP自带的分页生成器 ORG.Util.Page

生成的第2页后的链接是

/search/q/30/t//pagesize/20/p/2.html

t 参数的值丢失了,找了下解决办法:

修改 ThinkPHP/Common/functions.php 的 U 函数:

第 258行

        if(!empty($vars)) { // 添加参数foreach ($vars as $var => $val){if('' !== trim($val))   $url .= $depr . $var . $depr . urlencode(is_array($val) ? join(',',$val):$val);}                }

在 Action 获取 t 参数的地方再修改下代码:

$t = I('get.t');if(!is_array($t) && strpos($t,',') !== false) $t = explode(',',$t);

OK, 搞定

第2页后的链接变成

/search/q/30/t/a,b/pagesize/20/p/2.html

转载于:https://www.cnblogs.com/imbin/p/3369918.html

ThinkPHP分页链接支持数组参数的办法相关推荐

  1. 微信小程序传数组给后台(thinkphp后台接受前端数组参数)

    场景:需要前端传关联数组给后端 尝试:常规写法不好使 解决:前端json序列化 对象数组 为 字符串 str,然后将此字符串 str 作为参数的值传给后端(比如 schools: str ),后端将收 ...

  2. go函数详解:函数定义、形参、返回值定义规范、函数内存分析、不支持重载、支持可变参数、基本数据类型和数组默认都是值传递的、支持自定义数据类型、函数返回值命名

    引入 [1]为什么要使用函数: 提高代码的复用型,减少代码的冗余,代码的维护性也提高了 [2]函数的定义: 为完成某一功能的程序指令(语句)的集合,称为函数. [3]基本语法 func 函数名(形参列 ...

  3. 向sqlserver数据库中传递类似数组的参数解决办法

    向sqlserver数据库中传递类似数组的参数解决办法 关于sqlserver数据库存储过程传递varchar类型参数(后端给出参数格式 '1,2,3').但是查询始终没有结果,但是直接写在语句中确实 ...

  4. mysql 存储过程支持传入数组参数_问个小问题,关于存储过程传递数组参数

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 ALTER PROCEDURE [dbo].[Proce_Building_Relation_RP] -- Add the parameters for ...

  5. 【C 语言】指针 与 数组 ( 指针 | 数组 | 指针运算 | 数组访问方式 | 字符串 | 指针数组 | 数组指针 | 多维数组 | 多维指针 | 数组参数 | 函数指针 | 复杂指针解读)

    相关文章链接 : 1.[嵌入式开发]C语言 指针数组 多维数组 2.[嵌入式开发]C语言 命令行参数 函数指针 gdb调试 3.[嵌入式开发]C语言 结构体相关 的 函数 指针 数组 4.[嵌入式开发 ...

  6. php dump utfp,php pchart乱码-使用REST接口获取GeoServer中的...-结合 thinkPHP 分页写成自己分页类_169IT.COM...

    本页文章导读: ▪php pchart乱码      有俩种情况:①:未将中文字符编码格式修改成utf-8 (例子如下:)mb_convert_encoding($data, "html-e ...

  7. mysql 存储过程参数数组_如何给存储过程,传一个数组参数?

    接到这个需求,本以为简单.谁知道SQL不支持数组.于是想用','分割传进去,哪知道SQL居然没有split()函数,还得用substring & charindex,坑爹啊. 方法一 分割 例 ...

  8. ThinkPHP分页实例

    ThinkPHP分页实例 (2014-09-20 15:34:36) 很多人初学thinkphp时,不太熟悉thinkphp的分页使用方法,现在将自己整理的分页方法分享下,有需要的朋友可以看看. 控制 ...

  9. ajax 入参为list_ajax传递给后台数组参数方式

    出自:http://blog.csdn.net/lingxyd_0/article/details/10428785 在项目上用到了批量删除与批量更改状态,前台使用了EasyUI的DataGrid,用 ...

最新文章

  1. ASP.NET的include的用法
  2. 蓝桥杯: 基础练习 数列排序
  3. android c 电话联系人,Android 联系人按中文拼音排序
  4. jQuery实战读书笔记(第五章)
  5. SGU155(笛卡尔树的构造)
  6. sql order by,desc和limit使用(mysql)
  7. AlexNet层级分析(涉及:卷积核操作下下层网络特征图size计算;对通道和卷积核尺寸及通道前层feature map和卷积核的运算关系的解释)
  8. iframe缓存无法清空_详解Http缓存机制
  9. 四月份面试题汇总(一)
  10. 思科模拟器叫什么_宇宙无敌上帝视角无所不能之星球生成模拟器。
  11. MEncoder的基础用法—6.6. 改变电影大小
  12. 二路归并排序(非递归实现)
  13. 8位数控分频器的设计_基于FPGA的通用数控分频器的设计与实现
  14. 产业链图谱:2021年中国智能制造业产业链图谱|产业链全景图
  15. 2020年最好用的几个PHP开发工具推荐
  16. 硬件软件接口 (RISC-V) Chapter 2
  17. 必背C语言算法 C语言求自然底数e
  18. IDEA执行hadoop相关报错xxx from xxx is not a valid DFS filename.
  19. cron表达式详解!!!!
  20. html求三角形的面积,JavaScript计算三角形面积

热门文章

  1. Android Intent.FLAG_NEW_TASK详解,包括其他的标记的一些解释
  2. JS限制表单输入特效代码
  3. TensorFlow自带例子已经包含了android和ios下的摄像头图像分类示例Inception v1,这里补充一个Windows下的,使用AForge库(www.aforgenet.com)操作
  4. Opencv EmguCv 基本识别步骤
  5. Hook技术之Hook Activity
  6. 浅析微信支付:申请退款、退款回调接口、查询退款
  7. 定位排查工作流的计算结果数据量不符合预期的方法
  8. 【转】android 中如何限制 EditText 最大输入字符数
  9. Mac下关于-您不能拷贝项目“”,因为它的名称太长或包括的字符在目的宗卷上无效。-的删除...
  10. 给大家推荐一款高大上的代码高亮插件(sublime,github风格)——highlight.js