NightMICU
NightMICU

Reputation: 9240

Class Carbon\Carbon not found

I recently added a package to my Laravel 4 site and now anything that uses Eloquent (or at least Eloquent with any reference to date/time) is showing a 500 error that states:

Class 'Carbon\Carbon' Not Found.

I tried running

composer install
composer update
composer dump-autoload

Upvotes: 45

Views: 181718

Answers (11)

Douglas Henrique
Douglas Henrique

Reputation: 1

In the problem I had, I solved it by changing the date from:

date: '{{\Carbon::today->format('Y-m-d') }}'

to

date: '{{\Carbon\Carbon::today()->format("Y-m-d") }}'

Upvotes: 0

am_web_pro_5.0
am_web_pro_5.0

Reputation: 51

In your view file,try to access to the class like this :

{{Carbon\Carbon::now()->addDays()}}

Upvotes: 0

Lonare
Lonare

Reputation: 4703

For Laravel 8.x Please add

'Carbon' => Illuminate\Support\Carbon::class,

in your app/config/app.php

under aliases

or if you only want to use it in your controller

then please add

use Illuminate\Support\Carbon;

Upvotes: 11

Oli Folkerd
Oli Folkerd

Reputation: 8398

you need to add the line:

'Carbon' => 'Carbon\Carbon',

to the bottom of the 'aliases' array in app/config/app.php this will make the carbon library available everywhere in laravel.

Upvotes: 57

Jatin Arora
Jatin Arora

Reputation: 211

You this class in controller of Laravel.

use Carbon\Carbon;

then you simply define the carbon command for print the current date

$date = Carbon::now(); 

Upvotes: 21

smartrahat
smartrahat

Reputation: 5659

I had this problem once when I updated a project from gitlab. The below command worked for me.

composer dump-autoload

Upvotes: 4

Nɪsʜᴀɴᴛʜ ॐ
Nɪsʜᴀɴᴛʜ ॐ

Reputation: 2914

Some times specifying prefer-dist prefixed by “--” (aka “bare double dash”) at the end or suffixing at the end of create-project also matters while installing...

The below command was working fine in laravel 5.5 without getting an error

composer create-project laravel/laravel blog  "5.5.*" --prefer-dist

But when I was about to begin installing Laravel 5.6 with this below command

composer create-project laravel/laravel blog --prefer-dist

I used to get

Whoops\Exception\ErrorException : Class 'Carbon\Carbon' not found

After referring to the official Installation Documentation

composer create-project --prefer-dist laravel/laravel blog

After executing the above command there were no exceptions raised, therefore installation succeeded, thereby generating a base64 hash key

Upvotes: 0

DsRaj
DsRaj

Reputation: 2328

For all updated version you just need to

use Carbon\Carbon;

and for the global use, you can add this in app.php

'Carbon' => 'Carbon\Carbon',

Upvotes: 15

Pathros
Pathros

Reputation: 10750

Yes, it can work as @oli-folkerd 's answer. However, as seen in Laracasts (Laravel 5 Fundamentals series Video 10 "forms" min 16:55), almost in top of your ControllerClass php file, just add the following (or import the class if your php editor allows you do so):

use Carbon\Carbon;

Now you can simply use Carbon

$input['published_at'] = Carbon::now();

without having to add Carbon\

Upvotes: 74

Uchiha Itachi
Uchiha Itachi

Reputation: 890

My problem solved by just requiring nesbot/carbon just do this:

composer require nesbot/carbon

Upvotes: 8

Antonio Carlos Ribeiro
Antonio Carlos Ribeiro

Reputation: 87799

Not saying this is work for you, but those are steps that usually fix Laravel, when the problem is not on your source code, of course:

cd /your/application/dir

rm bootstrap/compiled.php

rm -rf vendor

composer install --no-dev

Upvotes: 7

Related Questions