经过多次来来去去,我成功安装了 PHP 5.6 的 MongoDB 驱动程序,并使其在 OSX El Capitan 上运行。 (它的工作方式是使用Homebrew)
为了开始处理项目,我为该项目创建了文件夹并使用Composer安装了我需要的必需的软件包。在我需要的这些包之间MongoDB/MongoDB这是推荐的蒙戈 PHP 库使用由PHP 手册线上和线下驱动程序 github 页面.
我发现的问题是 Eclipse 正在解析 \MongoDB\ 命名空间中的类,但不解析 \MongoDB\BSON\ 命名空间中的类。如果我检查什么Composer安装在vendor文件夹中我可以看到 \MongoDB\BSON\ 类实际上丢失了。另一方面,如果我在包含 PHP 的网络服务器中运行该程序,它会按预期执行。
所以我的问题是 Eclipse 如何找到丢失的类,或者我缺少什么。它们是在其他地方定义的吗?
如果这是不可能的,因为它们被编译成二进制库并且我无法解决它们,有没有办法让 Eclipse 不将这些特定的类显示为错误?
在 Web 服务器中运行正常但在 Eclipse 中突出显示为错误的类示例:
$fecha_creacion = new MongoDB\BSON\UTCDateTime();
Reading 这个帖子并且在这个主题上没有找到任何更新的内容,我得出的结论是驱动程序的开发人员不提供 php 源代码,而是让 IDE 开发人员以 IDE 可以识别的方式为驱动程序的不同功能提供 STUB函数并提供语法检查和文档弹出窗口。
按照此question,我最终找到了一个 JetBrains GitHub,其中有许多不同的 PHPStrom 存根,这个one他们之中。
因此,我复制了该文件并将其作为源的一部分添加到我的项目中。这解决了我的问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)