问题标签 [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 投票
1 回答
356 浏览

php - Mongo DB php驱动程序致命错误

我想将 Mongo DB 与 php 一起使用,因此我已经安装了驱动程序并在此处显示phpinfo() 在此处输入图像描述

问题是当我尝试连接它时,出现致命错误。

Fatal error: Uncaught Error: Class 'MongoDB\Client' not found

这是我的连接方式

这是我安装扩展的方式我sudo apt-get install php7.0-mongodb 也跟着这个http://php.net/manual/en/mongodb.tutorial.library.php 任何帮助!

0 投票
1 回答
117 浏览

javascript - PHP中MongoDb如何动态访问子对象

PHP中MongoDb如何动态访问子对象


我有以下示例代码,我需要在 php 中执行相同的查询

我将显示 SHELL 脚本以在 mongoDB 中获取结果

我如何能够在带有数组和对象的 PHP 集合查询中获得结果。

我试过这样但它不能正常工作

或者

在此先感谢我还附上了示例 json。请参考并给我解决方案。


0 投票
1 回答
1487 浏览

php - 如何在 PHP 中编写 MongoDB foreach 查询

如何在 PHP 中编写 MongoDB foreach 查询?

现在我必须 在 PHP 中使用iterator_to_array编写相同的MONGODB QUERY代码,我不知道如何让这个查询在 PHP 中执行。

现在我陷入了困境。我用一些例子给出了我的数据。

使用蒙戈查询:

实际数据库记录:

预期输出:

0 投票
1 回答
171 浏览

php - 在 API 调用中将字符串转换为数组

我将数组作为参数中的字符串传递给 php 中的 api,如下所示:

在我的 api 文件中,我使用这个数组来访问 mongodb 查询:

但这没有用。当我硬编码array(done = 1)find查询中时,它似乎工作正常。

上面的代码打印N。所以我想这是因为$query它是作为字符串传递的。

PS:我也尝试了 json_encode、json_decode 和反序列化,但没有成功。我可能在这里做错了什么。

0 投票
0 回答
25 浏览

mongodb - 聚合连接在 mongo db 中不起作用

我有以下三个系列

  • 产品表

    -- 产品标识

    - 产品名称

    -- 类别标识

    -- 供应商 ID

    .... 很快

  • 类别表

    -- 类别标识

    - 分类名称

  • 供应商表

    -- 供应商ID

    - 供应商名称

我在下面写了 mongodb 聚合查找查询

现在上面的查询正在从产品表中获取所有字段,但是 categorydetails 和 vendordetails 是空的。我无法追踪这个问题。请帮忙!!!

输出就像

类别表的实际文档就像

供应商表的实际文件就像

产品表的实际文档就像

0 投票
1 回答
431 浏览

php - Mongodb php 扩展未加载。Linux centos 6 Plesk onyx php 5.6.31

我已经使用以下命令在带有 plesk onyx 的 linux centos 6 上安装了最新的 mongodb php 驱动程序。

我还在 php.ini 文件中添加了 extension=mongodb.so 。在运行安装之前,我还将 cli 版本从 php 5.3 更改为 5.6,因为 php 需要至少为 5.4 才能继续安装。

现在我的 phpinfo() 页面中的 mongodb 部分。但是,当我在 php 页面中对其进行测试时,未加载该扩展。

当我尝试重新安装时,我收到此消息:

PHP 警告:PHP 启动:无法加载动态库 '/opt/plesk/php/5.6/lib64/php/modules/mongo.so' - /opt/plesk/php/5.6/lib64/php/modules/mongo.so : 无法打开共享对象文件: No such file or directory in Unknown on line 0 pecl/mongodb is already installed and is the release version 1.2.9 install failed

此外,显示 /opt/plesk/php/5.6/lib64/php/modules/mongo.so 的行指的是 mongo.so,而实际上模块文件夹中的文件是 mongodb.so

请问有人对此有什么建议或经验吗?

0 投票
0 回答
37 浏览

mongodb - mongo db中聚合中的数据类型问题

我编写了以下代码来聚合 php 应用程序中的两个表

现在我面临一个问题,该studentDetailId字段存储为字符串并 studentId存储为整数。

上述查询将返回空结果。

  • 在这种情况下是否有可能进行聚合?
0 投票
1 回答
1209 浏览

mongodb - 用来自 symfony 3.2 的 Fixtures 数据填充 mongoDB

我正在做一个 Symfony 项目,我正在尝试将一些固定数据填充到 mongoDB,这就是我所做的:

php bin/控制台原则:mongodb:fixtures:load

然后我得到了这些结果:

但是数据库中没有发生任何事情(仍然是空的)。

我在用 :

  • Ubuntu 16.04
  • Symfony 3.2
  • MongoDB 3.4.4
  • PHP 7.0.23

有任何想法吗 ? 谢谢。

0 投票
1 回答
907 浏览

mongodb - jensegers laravel/MongoDB 中不区分大小写的搜索查询

如何查询不区分大小写的搜索或 where 条件。

例如,我有收藏标签

如果我查询::where('tag','abc')

我得到了唯一的 id1 文件。如何将其查询为不区分大小写,以便我可以检索两个文档(id1 和 id2)?

非常感谢任何帮助。

0 投票
1 回答
552 浏览

php - 无法在 WAMP 中为 PHP 配置新的 MongoDb 驱动程序 (php_mongodb.dll)

我想使用 PHP 和 MongoDb,但我无法为 PHP 配置新的 MongoDb 驱动程序。我已经使用旧的 MongoDb 驱动程序(php_mongo.dll)进行了测试,它工作正常。

我为配置新的 MongoDb 驱动程序所做的步骤:

1] 下载最新的 mongodb 驱动程序 (php_mongodb-1.3.1-7.1-ts-vc14-x64.zip)。

2] 在两个目录中复制 php_mongodb.dll 以更安全:

a) C:\wamp64\bin\php\php5.6.25\ext

b) C:\wamp64\bin\php\php7.0.10\ext

3]在 php.ini @C:\wamp64\bin\apache\apache2.4.23\bin\php.ini 末尾添加行extension=php_mongodb.dll

4]重新启动WAMP服务器并测试是否在“ http://localhost:90/?phpinfo=1 ”配置了驱动程序,但是那里没有像“mongo”这样的东西。

如果我为旧驱动程序(php_mongo.dll)执行上述所有步骤,那么它会在“ http://localhost:90/?phpinfo=1 ”处显示“mongo”部分。

系统和应用程序版本

视窗 10 64 位

WAMP 服务器 3.0.6

PHP 5.6.25

php_mongodb-1.3.1-7.1-ts-vc14-x64.zip 驱动

如果我做错了什么,或者缺少什么,请纠正我。