【问题标题】:Call to undefined method Carbon\Carbon::getTimestamp()调用未定义的方法 Carbon\Carbon::getTimestamp()
【发布时间】:2017-06-25 03:49:06
【问题描述】:

我是 Laravel 的新手,我正在开发一个应用程序,我刚出去,当我回来时突然收到这个错误:

FileSessionHandler.php 第 70 行中的 FatalThrowableError: 调用未定义的方法 Carbon\Carbon::getTimestamp()

我不知道该怎么做才能解决这个问题。请帮忙。谢谢:)

【问题讨论】:

    标签: php laravel php-carbon


    【解决方案1】:

    您需要在 Carbon 对象上使用getTimestamp(),如果您想获取当前时间戳,请执行此操作:

    Carbon\Carbon::now()->getTimestamp();
    

    【讨论】:

    • 好的,但我会把它放在哪里?每次我刷新页面和我想去的任何路线我仍然得到同样的错误
    • @RanilJaramillo 这适用于任何课程。我已经尝试过了,这段代码运行良好。如果遇到错误,请显示错误信息和相关代码。
    • @AlexeyMezenin 我有同样的问题。 1)这是系统中发生的错误,而不是用户代码中的错误。(见日志)。 2)这只有时会发生,例如几个小时,然后奇怪地消失。 3)Here is my error log。这个问题差点让我发疯!!!因此,如果您能帮助我解决这个问题,我将不胜感激!谢谢!!!
    • @AlexeyMezenin 和 4) 我看过 laravel 内核的相关源代码。它正确使用 Carbon::now()->getTimestamp()。 (所以似乎在对象上调用函数将被记录为 CLASSNAME::FUNCTIONNAME。)
    【解决方案2】:

    您可能没有正确调用该方法。在控制器中,它必须通过 Carbon\Carbon::now()->getTimestamp();\Carbon\Carbon::now()->getTimestamp(); insted 调用,因为它是相对于 Laravel 的根目录。

    或者,您也可以在 Controller 的初始化之前添加use Carbon\Carbon;

    【讨论】:

      【解决方案3】:

      我昨天也遇到了这个问题,现在我知道为什么了,因为php类的DateTime公共方法getTimestamp不能被调用! 比如这样:

          $date = new DateTime();
          echo $date->getTimestamp();
      

      你可以试试那个代码,如果你得到错误,那么你就可以理解为什么你的 laravel 会出现这样的错误! 所以在 laravel 中,Carbon 扩展了 DateTime,Carbon 也不能调用 getTimestamp()! 另一个问题,为什么 Datetime::getTimestamp 不能被调用?我现在不知道,可能是php的bug?,我的php版本是7.0.4!我换了另一个php 7.0.10。就OK了! 希望我能帮助你! 一条新消息!我重启了电脑,这样也行,getTimestamp方法可以直接调用

      【讨论】:

        猜你喜欢
        • 2019-02-07
        • 1970-01-01
        • 2015-10-01
        • 2018-02-24
        • 2017-05-18
        • 2012-06-05
        • 1970-01-01
        • 2014-06-07
        • 1970-01-01
        相关资源
        最近更新 更多