问题标签 [php-mongodb]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
11018 浏览

php - 未找到合适的服务器(`serverSelectionTryOnce` 集):[在 '10.0.0.106:27017' 上调用 ismaster 的连接超时]

我对 laravel 项目使用 mongoDB 有这个问题

我做了

但它仍然不起作用我不知道如何解决它

0 投票
1 回答
1231 浏览

php - 致命错误:调用未定义的方法 MongoCursor::toArray()

我想将游标转换为数组,所以我看到游标结果,为此,当我使用 mongodb 的 toArray 时,显示此错误

“致命错误:调用未定义的方法 MongoCursor::toArray()”

这是我的代码:

我如何使用https://docs.mongodb.com/manual/reference/method/cursor.toArray/

0 投票
2 回答
107 浏览

php - PHP 与 MongoDB

我正在尝试使用 MongoDB 创建一个网站来存储用户凭据(用户名和密码)。我想使用 PHP,因为我很熟悉它,但是在这方面几乎所有东西背后的语法都有问题(由于更新的 php-mongodb 驱动程序)。是否有任何在线资源可以帮助,特别是在数据库中添加和删除信息?非常感谢任何信息。

0 投票
0 回答
554 浏览

php - 如何使用 PHP 在 mongodb 中使用 _id 更新多个文档?

我在 PHP 中使用过 Mongodb

MongoConnection

我有包含 ids 的 php 数组,我想用以下 ids 数组更新文档。

我已经使用 php 以下脚本更新了单个文档,但我在多个文档更新方面遇到了困难

singleDocUpdate.php

0 投票
1 回答
482 浏览

php - 使用 mongodb php 扩展连接到 Azure DocumentDB

目前 Azure NoSQL 解决方案 DocumentDB 没有任何 PHP SDK。有一个 REST API 替代方案,它在 Github 上有几个 PHP 包装器。

Azure 中的 NodeJS 示例使用来自 npm 的 mongodb 驱动程序。通过该示例,我可以成功地在 DocumentDB 上添加文档。因此,使用 mongo 驱动程序可以对 Azure DocumentDB 进行扩展。这里的例子

但是,当我尝试使用 PHP7.0 连接到 Azure DocumentDB - 安装了 mongodb 扩展时,我的服务器返回空响应。示例场景

更新: 刚刚意识到我实际上可以使用 mongodb 驱动程序在纯 php 脚本中连接到 Azure DocumentDB。由于我正在使用“cakephp 2”框架的框架,可能会出现问题。

更新 2 这不是 CakePHP2 而是 Apache(MAMP)。当我隔离问题时,我发现实际上崩溃只发生在 apache 上。我可以将扩展与 nginx 一起使用。

0 投票
0 回答
120 浏览

php - 启用 mongodb 身份验证,网站未加载

现在我有一个网站托管,我正在使用 mongodb。我可以使用我的凭据连接到数据库,例如:

当我在 mongodb.conf 文件夹中打开身份验证时,我的网站拒绝加载并说它无法连接。但是,mongoclient 的详细信息绝对正确。它允许我使用上面的代码从数据库中添加和检索,但是一旦我启用身份验证,它就会由于某种原因失败。任何人有任何见解?

如果有人可以帮助我,谢谢。

0 投票
0 回答
61 浏览

php - 连接字段,然后在 php/mongodb 中过滤结果

我在 mongo db 集合 studentTbl 中有三个字段:

  • 中间名字

我在 php 应用程序中使用 mongo db 创建搜索模块并尝试了以下代码行

如果 studentTbl 中有一个包含以下详细信息的文档

  • first_name :“Pooja”

  • middle_name:“马哈维尔”

  • 姓氏:“夏尔马”

现在,如果我们在 $args 中给出“Pooja”,它应该获取所有名为“pooja”的学生,如果我们在 $args 中给出“sharma”,它应该获取所有名为 sharma 的学生。如果 $args 包含“poo”,它应该获取所有名称包含“poo”的学生,无论是在结尾还是开头或中间,比如“poonam”或“tapoo”等,如果给出了全名,那么它应该相应地获取,如果$args 包含“pooja sharma”,它也应该基于名字和姓氏来获取。上面的代码正在获取所有记录。另请注意,应保留其他搜索条件。

任何帮助将不胜感激。

0 投票
6 回答
7190 浏览

php - PHP MongoDB - 不推荐使用不带游标选项的聚合命令。什么?

我已经更新了 mongo,现在在日志中出现以下错误: Use of the aggregate command without the cursor option is deprecated

Mongo 说我应该为聚合函数添加第二个 REQUIRED 参数,因为我目前的用法已被弃用。

我目前使用以下代码 PHP(现在已弃用):

并返回这种格式:

为了不使用已弃用的代码,我添加了新的第二个参数(但我不明白该放什么):

这会返回相同的信息,但会改变初始结构:

更新后 Mongo 迫使我改变读取数据的方式。我不明白我应该在名为“光标”的第二个参数中输入什么值......

我应该在第二个参数中输入什么?我可以在不改变结果结构的情况下设置默认值吗?

文档: https ://docs.mongodb.com/manual/reference/method/db.collection.aggregate/ http://php.net/manual/es/mongocollection.aggregate.php

更新:

如果我在函数中指示光标,我将不再收到错误。但是在没有应用解决方案的情况下,我阅读了 LOG 并且随机出现了警告,我有一个运行多次的代码,有时如果它报告提到的警告而其他人则没有。

为什么?

0 投票
1 回答
2706 浏览

php - PHP mongodb驱动检查连接

尝试使用驱动程序管理器检查与mongodb服务器的连接php!我用谷歌搜索了很多次以获得类似的方法$DriverManager->checkConnection()或任何类似的属性$DBmanager->connected

php var_dump 的当前输出MongoDB\Driver\Manager

我通过启动数据库服务器进行检查,然后不运行服务器!结果没有区别var_dump

有什么帮助吗?

0 投票
0 回答
175 浏览

php - 插入 mongo 数据库不起作用 - 为什么?

我尝试在 Mongo DB 中设置一些基本的装置。为此,我读取了一组 JSON 文件并尝试将它们插入本地数据库(我正在使用管理员权限进行连接)。这是奇怪的部分。由于某些原因,我写了应该工作基本相同的代码版本,所以我有一个:

第二个基于要读取的文件的迭代而不是列出现有集合:

诀窍是第一个实现效果很好,第二个抛出MongoCursorException了身份验证问题。我遇到的问题是这两个版本实际上都试图连接到完全相同的数据库和集合。所以我得到以下输出:

第 96 行的 rv/dev-api/src/tests/init_databases.php

当然,我还检查了单独运行这些片段以及相同的结果,所以问题是:我在第二种方法中做错了什么?