【问题标题】:Fatal error: Class 'Vokuro\Auth\MongoDate' not found in致命错误:在中找不到类 'Vokuro\Auth\MongoDate'
【发布时间】:2017-04-10 12:29:30
【问题描述】:

我正在使用 Mongo 和 Phalcon 构建一个应用程序。我正在尝试从 Vokuro 复制用户登录、创建等,但我遇到了一个小问题:

我已经复制了 Auth 库,并且正在编辑它的一部分,以便它可以与 Mongo 一起使用。在函数 registerUserThrottling 中,我正在替换 Mongo Dates 的时间戳,如下所示:

$failedLogin->attempted = new MongoDate(time());

但我收到以下错误:

致命错误:在中找不到类 'Vokuro\Auth\MongoDate' /Applications/XAMPP/xamppfiles/htdocs/playerm8/app/library/Auth/Auth.php 在第 88 行

我确定 Mongo 已正确安装,因为我在同一个应用程序中使用它,我什至在其中一个控制器中使用相同的 MongoDate 函数没有任何问题。

这里的问题是 Phalcon 正在命名空间 Vokuro\Auth 中寻找函数。

问题是:如何在 Vokuro https://github.com/phalcon/vokuro/blob/master/app/library/Auth/Auth.php 的 library/Auth/Auth.php 中使用 MongoDate

【问题讨论】:

  • 大胆猜测,但你试过\MongoDate吗?
  • 我应该尝试一下,我认为它会奏效。但是我已经摆脱了命名空间并使其以不同的方式工作。感谢@Timothy 的努力,希望其他人觉得这很有用

标签: php mongodb namespaces phalcon


【解决方案1】:

您的代码的路径是什么? 如果它在 /app/ 中,则类似于:

use library\Auth\Auth

但这是假设您在程序启动时已经在某处加载/自动加载了库。

【讨论】:

  • 我已经在 app/config/loader.php 中加载了命名空间,并且 app/library/Auth/Auth.php 中的第一行代码是 - namespace Vokuro\Auth; - 不确定你建议在哪里添加 - 使用 library\Auth\Auth - ?如果 Auth 库正常工作,问题是 Mongo 函数不起作用。
  • 哦。好的。在您尝试实例化它的类上方。
  • 我又看了一遍。是否要在 vokuro/app/library/Auth/Auth.php 中实例化 MongoDateTime()
  • 如果是这样,那么您需要确保您正在导入正确的类和/或命名空间。然后可能值得尝试将其用作静态类,例如 l $obj = new library/Auth/Auth; $failedLogin->attempted = $obj->MongoDate(time()); 如果没有本地完整的代码库,这有点难以解决。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-03-05
  • 1970-01-01
  • 2016-05-26
  • 2018-03-09
  • 2014-10-03
  • 2015-07-01
  • 1970-01-01
相关资源
最近更新 更多