我正在尝试将 Zend 与 MongoDB 集成。我想我快到了,但我需要一些帮助才能完成任务。我对 zend 和 mongo 都是新手,但对 PHP 和 MySQL 有相当的经验。
一些细节:
我的 Zend 项目基于http://framework.zend.com/manual/2.0/en/user-guide/skeleton-application.html上的骨架教程。这在我的计算机上运行良好,但基于 mysql。
我已经安装了 MongoDB。我可以在命令行上编写 nosql 并且可以在 PHP 脚本中实例化 MongoClient 对象,所以这些东西似乎可以工作并相互交谈。
我想使用 mongo 而不是 mysql,并且我已经实现了 Doctrine。我不知道 Doctrine 做了什么,我已经通过几次搜索尝试找到如何在 zend 中运行 mongo 命令。这些事实使我得出结论,我不知道自己在做什么。
所以对于我的问题的细节:
- 据我了解,我应该在某处实例化一个 mongo 对象。如果是这样,我应该把实例化放在zend的哪里?
- 如果不是,大概我需要 mongo 对象的现有实例来从模型类内部运行各种查找/保存命令,所以如果这是真的,我如何访问现有的 mongo 对象?
感谢您的帮助,同样欢迎澄清问题。
为澄清起见,于 2012 年 13 月 12 日编辑。
有了给定的答案,我似乎走在了正确的轨道上,我可以进一步澄清我需要什么:查看下面链接的Doctrine Documentation,我仍然不清楚应该在哪里进行文档管理器实例化。我本来希望它进入一个更通用的位置,该位置在每个页面加载时运行。此外,我发现的大多数教程似乎都引用了与骨架应用程序不同的文件结构,所以当他们说将某些东西放在某些地方时,我不确定他们的意思。例如,我不断看到对引导文件的引用,但我唯一的引导文件位于测试目录中。
我的问题是:
- 如果我只是想打印集合中的所有文档,我需要在 indexAction 函数中添加什么代码(当我转到正确的 URL 时它肯定会响应)?
- 我是否需要在其他地方添加任何其他代码,如果需要,在哪里以及什么代码?