前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[MongoDB] 使用PHP在MongoDB中搜索的实现

[MongoDB] 使用PHP在MongoDB中搜索的实现

作者头像
唯一Chat
发布2020-02-25 17:16:46
5.1K0
发布2020-02-25 17:16:46
举报
文章被收录于专栏:陶士涵的菜地陶士涵的菜地

条件操作符用于比较两个表达式并从mongoDB集合中获取数据。 MongoDB中条件操作符有: (>) 大于 - $gt (<) 小于 - $lt (>=) 大于等于 - $gte (<= ) 小于等于 - $lte MongoDB 使用 $regex 操作符来设置匹配字符串的正则表达式,使用PCRE (Perl Compatible Regular Expression) 作为正则表达式语言。 MongoDB OR 条件语句使用了关键字 $or

下面是具体一个PHP例子中的$filter数组:

代码语言:javascript
复制
array(3) {
  ["$or"]=>
  array(2) {
    [0]=>
    array(1) {
      ["modelID"]=>
      string(12) "基础新闻"
    }
    [1]=>
    array(1) {
      ["name"]=>
      string(12) "基础新闻"
    }
  }
  ["createTime"]=>
  array(2) {
    ["$gte"]=>
    string(19) "2020-02-18 00:00:00"
    ["$lte"]=>
    string(19) "2020-02-18 23:59:59"
  }
  ["modelXML"]=>
  array(1) {
    ["$regex"]=>
    string(6) "标题"
  }
}
代码语言:javascript
复制
        $filter=$this->parseSearchQuery($q);
        //分页显示
        $options = [
            'skip'=>($page - 1) * $pageSize,
            'limit'=>$pageSize,
            'sort' => ['createTime' => -1],
            'projection'=>['_id'=> False, "modelXML"=> False],
        ];
        var_dump($filter);
        $mongoManger = new MongoDB\Driver\Manager("mongodb://127.0.0.1:27017");
        $query = new MongoDB\Driver\Query($filter, $options);
        $cursor = $mongoManger->executeQuery('.article', $query);
        if($cursor->isDead()){
            return [];
        }
        $list=[];
        foreach ($cursor as $document) {
            $list[]=$document;
        }
        return $list;
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-02-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MongoDB
腾讯云数据库 MongoDB(TencentDB for MongoDB)是腾讯云基于全球广受欢迎的 MongoDB 打造的高性能 NoSQL 数据库,100%完全兼容 MongoDB 协议,支持跨文档事务,提供稳定丰富的监控管理,弹性可扩展、自动容灾,适用于文档型数据库场景,您无需自建灾备体系及控制管理系统。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档