Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在laravel视图中使用碳纤维功能(叶片模板)_Php_Laravel_Php Carbon - Fatal编程技术网

Php 在laravel视图中使用碳纤维功能(叶片模板)

Php 在laravel视图中使用碳纤维功能(叶片模板),php,laravel,php-carbon,Php,Laravel,Php Carbon,我从数据库中获取一些值,并从控制器将这些值传递到视图中。现在,我想在Laravel视图中使用一些碳函数 在我的视图文件中,我写了 foreach($customer as $time){ $create= $time->created_at; $update= $time->updated_at; $create_at_difference=\Carbon\Carbon::createFromTimestamp(strtotime(

我从数据库中获取一些值,并从控制器将这些值传递到视图中。现在,我想在Laravel视图中使用一些
碳函数

在我的视图文件中,我写了

foreach($customer as $time){

        $create= $time->created_at;
        $update= $time->updated_at;

        $create_at_difference=\Carbon\Carbon::createFromTimestamp(strtotime($create))->diff(\Carbon\Carbon::now())->days;


}
当我这样尝试时,它返回
“未找到类‘Carbon’”


我该怎么做?

不要重复
\Carbon\Carbon
,试试看


\Carbon::createFromTimestamp(strotime($create))->diff(\Carbon::now())->days

另一个选项,我认为最好将这行代码放在类的顶部:

namespace App\Http\Controllers


use Carbon\Carbon;


class MyController {
  ...
}

如果要使用命名空间类,则不需要第一个斜杠:

 $create_at_difference=Carbon\Carbon::createFromTimestamp(strtotime($create))->diff(\Carbon\Carbon::now())->days;
你应该写Carbon\Carbon而不是\Carbon\Carbon

这是一个快速的解决方案。但是,在视图中直接使用类是个坏主意。您可以通过创建一个函数来向模型添加更多功能,该函数将返回在差异处创建的当前值

假设您有客户模型,您可以这样做:

use Carbon\Carbon;

class Customer extends Eloquent
{
      public function created_at_difference()
      {
           return Carbon::createFromTimestamp(strtotime($this->created_at))->diff(Carbon::now())->days;
      } 
}
然后在视图中,您可以访问以下内容:

@foreach($customers as $customer)
   {{$customer->created_at_difference()}}
@endforeach

它与my view.blade.php的全局命名空间一起工作,如下所示

      {{ \Carbon\Carbon::parse($row->posted_at)->diffForHumans() }}

面对同样的问题,这对我来说是有效的

$create = $time->created_at;

$create_at_difference = Carbon\Carbon::createFromTimestamp(strtotime($create))
                    ->diff(\Carbon\Carbon::now())->days;

在6a56f855267d18143d461317c820047f第76行中FatalErrorException不起作用:类“Carbon”未找到我必须在我的视图文件中导入Carbon吗我只是这样尝试过,工作正常{!!\Carbon\Carbon::now()->toDateTimeString()!!}我需要像这样将Carbon导入我的视图文件吗不,不需要导入Carbon,只需尝试删除代码,然后粘贴我的代码,看看你得到了什么?可能重复的是,因为刀片中没有声明全局名称空间,所以你必须确保从
\Carbon\Carbon::