搜索
系统检测到您的用户名不符合规范:

【thinkphp】3.2二维数组模糊查询

浏览:2933 发布日期:2017年04月25日 分类:业务逻辑 关键字: 二维数组 thinkphp
【thinkphp】3.2多维数组模糊查询
我们在做数据列表的时候 把文章列表数据缓存到缓存里
取出来大概的结构是这样的Array
(
[0] => Array
(
[id] => 16
[title] => oupoipoipoipoip
[keywords] =>oupoipoipoipoip
)

[1] => Array
(
[id] => 15
[title] => qweqweqweqweqwe
[keywords] => qweqweqweqweqweqweqweqweqweqweqweqweqweqweqweqweqweqweqweqwe
)

[2] => Array
(
[id] => 14
[title] => asdasdasdasdasd
[keywords] =>asdasdasdasdasd
)

[3] => Array
(
[id] => 13
[title] => zxczczxczxc
[keywords] => zxczczxczxc
)

[4] => Array
(
[id] => 12
[title] => rtyrtyrtyrtyrtyr
[keywords] => rtyrtyrtyrtyrtyr
)
)
这样我们进行模糊查询
百度好久 最终在tp官网看到一个代码
http://www.thinkphp.cn/code/3030.html
但是这位小哥的有个问题 我想查询多个字段匹配的时候就不行了
只能是固定的一个
稍微修改了一下他的代码/**
* @文章列表搜索
* @2017年4月25日15:13:52
*/
function arrList($arrs,$keywords=NULL,$type=array('title')){
foreach ($arrs as $key => $searchData) {
$arr = array();
foreach($searchData as $values=>$v ) {
for ($i=0;$i<count($type);$i++){
if ($values==$type[$i]){
array_push($arr, $values);
}
}
}
for ($a=0;$a<count($arr);$a++){
if (strpos($searchData[$arr[$a]],$keywords)) {
$result[] = $searchData;
}
}
}
return $result;
}
调用方法arrList($newsList,'1',array('title','keywords'));
评论() 相关
后面还有条评论,
评论支持使用[code][/code]标签添加代码
您需要登录后才可以评论 登录 | 立即注册
收藏
ccav14
积分:1643 等级:LV3
热点推荐
(追記) (追記ここまで)
最新更新

我们

合作

网站

信息

ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。

AltStyle によって変換されたページ (->オリジナル) /