Carbon\Carbon 未找到不一致的 - Laravel 5.5

Carbon\Carbon not found inconsistently - Laravel 5.5

所以目前我撤回一个日期并将其转换为可读的 carbon 格式:

</div>
<div class="">
 <label for="Name">Letter Sent:</label>
 @if (is_null($Client->letter_posted))
 @else
   {{  \carbon\carbon::createFromFormat('Y-m-d',$Client->letter_posted)->format('d/m/Y')}}
 @endif
</div>

它在测试时有效(在 letter_posted 为 null 和不为 null 时都进行测试)但是偶尔它会在实时服务器上吐出错误:

Class 'carbon\carbon' not found

它在过去 2 个月内只随机发生过 3 次,刷新页面将消除此错误,例如。错误出现,如果您刷新页面,它不再存在。

感谢任何帮助。

将代码更改为:

{{  \Carbon\Carbon::createFromFormat('Y-m-d',$Client->letter_posted)->format('d/m/Y')}}

当您在区分大小写的服务器中部署系统时会发生这种情况。

您收到错误消息很可能是因为您在代码中的某处使用了 carbon\carbon 而不是 \carbon\carbon

前面的\指的是全局命名空间。如果没有 \,您指的是可能不存在的 class(这是您遇到的错误)。

参见:


您可以创建别名以避免在 Laravel 中使用全名。在 app.php 中,转到别名并添加 'Carbon' => 'Carbon\Carbon'。然后你可以像这样使用它: {{ Carbon::createFromFormat('Y-m-d', $Client->letter_posted)->format('d/m/Y') }}


补充说明:虽然 PHP 命名空间不区分大小写,但最好将它们视为区分大小写:使用 \Carbon\Carbon 而不是 \carbon\carbon.