因为,laravel使用now()作为carbon类的助手函数,所以我尝试了这个
dd(now('GMT+5:45')->isoFormat('x')))
但它返回了laravel的坏方法调用异常
Illuminate\Support\Carbon::isoFormat does not exist.
我只想把日期和时间转换成time string函数
我现在该怎么办?

最佳答案

看起来你用的是一个版本的拉维,它比包含碳1的5.8低,因此,isoFormat()不包含,因为它是碳2的一部分。
所以你可以选择使用formatLocalized()但是请注意它使用的是different布局模式而不是isoFormat()
我给你的建议是,如果你想使用Laravel 5.8
如果您想坚持使用当前版本的laravel并继续使用isoFormat(),则需要执行以下操作:
在其中一个服务提供者中,假设appserviceprovider,在register()中添加:formatLocalized()这将只本地化Carbon::setLocale($this->app->getLocale());
通过设置php->diffForHumans()来帮助carbon,它将使用您机器中已安装的区域设置来确保您的操作系统(linux/mac)已安装了所需的本地:您可以通过键入setLocal()来检查,如果没有显示,则运行:locale -a一个简单的gui将通过点击sapce按钮然后输入来选择所需的本地,然后选择默认区域设置。
如果您刚刚安装了所需的区域设置,请确保重新启动php fpm服务:sudo dpkg-reconfigure locales
使用本地化方法,在您的情况下:systemctl restart php7.3-fpm.service。I.G:->formatLocalized()

关于php - Carbon::isoFormat不存在,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53152511/

10-12 13:39