专栏首页陶士涵的菜地[MongoDB] 使用PHP根据_id字段查询数据

[MongoDB] 使用PHP根据_id字段查询数据

mongo中的_id是一个objectid对象类型,不管是查询时作为条件,还是列表时展示内容,都需要进行一下抓换

查询时要转为objectid对象

列表时要把对象转成字符串覆盖回_id字段

        $filter['_id']=new MongoDB\BSON\ObjectId($params['id']);;
        $options=[];
        $collect='.modelHis';
        $mongoManger = new MongoDB\Driver\Manager("mongodb://127.0.0.1:27017");
        $query = new MongoDB\Driver\Query($filter, $options);
        $cursor = $mongoManger->executeQuery($dbName.$collect, $query);
        if($cursor->isDead()){
            //return [];
        }
        $items=[];
        foreach ($cursor as $document) {
            $document->_id=$document->_id->__toString();
            $items[]=get_object_vars($document);
        }

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • [日常] 20号日常工作总结

    批量删除群发列表 批量删除邮箱地址 (传递以逗号分隔的字符串如 21,22 或者传递一维数组如 id[]=21&id[]=22) (使用array_keys和a...

    陶士涵
  • [Memcache] memcache中的过期时间策略

    1. memcached内部不会监视记录是否过期,而是在get时查看记录的时间戳,检查记录是否过期。 这种技术被称为 惰性过期。因此,memcached不会在过...

    陶士涵
  • [PHP]利用PHP的引用生成树的结构

    PHP中的引用就是两个变量指向了同一个地方,只要在变量前面增加了&符号,它就变成了一个引用

    陶士涵
  • 无限级子商户的查询优化方法

    A 有 2 个直接下级B、C,    B有2个直接下级D、E,    C有2个直接下级F、G

    宣言言言
  • Charles抓包工具的破解以及使用

    下载Charles.jar ,然后按照后在Charles→lib中替换掉Charles.jar

    小小咸鱼YwY
  • Yii2 数据操作Query Builder

    $rows = (new \yii\db\Query()) ->select(['dyn_id', 'dyn_name']) ->from(...

    botkenni
  • ZABBIX对接飞书实现报警通知

    飞书提供了丰富的api来实现消息的通知,包括文本消息、图片消息、富文本消息,本次介绍使用飞书api发送文本消息,以下是实现思路 飞书API地址:https://...

    没有故事的陈师傅
  • .NET开发人员如何开始使用ML.NET

    随着谷歌,Facebook发布他们的工具机器学习工具Tensorflow 2和PyTorch ,微软的CNTK 2.7之后不再继续更新(https://docs...

    张善友
  • MongoDB 存储过程的使用以及性能调优方案

    虽然MongoDB给了我们很多驱动可以用,但是都没有mongodb的shell来的方便。 就比如说最近需要做的DBRef嵌套类型的数据要做CRUD如果使用mog...

    李海彬
  • MongoDB 存储过程的使用以及性能调优方案

    虽然MongoDB给了我们很多驱动可以用,但是都没有mongodb的shell来的方便。 就比如说最近需要做的DBRef嵌套类型的数据要做CRUD如果使用mog...

    李海彬

扫码关注云+社区

领取腾讯云代金券