Home » Laravel: Get Year From Date

Laravel: Get Year From Date

Last updated on June 5, 2021 by

In this tutorial, we will learn how to get the year from the date in Laravel. Laravel provides a very useful Carbon instance to interact with date & time. The Carbon instance actually uses PHP’s DateTime class in the backend. Let’s just dive into it and explore it.

Get Year From Date In Laravel

Carbon provides the format() method which is used to format the date as we want. We can also get the year from the date. Also, this function is useful to change any kind of date format like we are doing in PHP’s date() function. Let’s see simple examples.

Notes: Don’t forget to add use Carbon/Carbon in namespace

Example 1: Extract Year From Static Date

<?php

namespace App\Http\Controllers;
use Carbon\Carbon;

class PaymentController extends Controller
{

    public function index()
    {
        $paymentDate = '05/06/2021';
        $year = Carbon::createFromFormat('d/m/Y', $paymentDate)->format('Y');
       // Use small y for 2 digit year
        dd($year);
    }
}

Output:

"2021"

In the above example, we have used the createFromFormat() function which helps us to provide exact conversion from the specific date format else it might interpret the wrong date format and gives us the wrong output.

It is always advisable to use createFromFormat() function while dealing with the static dates or if you changed the default date format.

Example 2: Extract Year From Table’s Date Column

Use the following example when you have date or timestamp column into your database table.

Laravel is smart enough so when you are dealing with dates or timestamps then it will automatically be converted into the Carbon instance so you can easily convert it as per your needs. For example,

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Carbon\Carbon;
use App\Models\Payment;

class PaymentController extends Controller
{
    public function index()
    {
        $payment = Payment::find(1);

        $year = $payment->created_at->format('Y'); 
       // Use small y for 2 digit year
        
        dd($year);
    }
}

Output:

"2021"

Example 3: Extract Year Using PHP’s date() Function

If you don’t want to use Laravel’s Carbon instance then you can simply use PHP’s date() function to get the year from the date.

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Carbon\Carbon;
use App\Models\Payment;

class PaymentController extends Controller
{
    public function index()
    {
        $payment = Payment::find(1);

        $year = date('Y', strtotime($payment->created_at));
        // Use small y for 2 digit year
        dd($year);
    }
}

Output:

"2021"

Additionally, read our guide:

  1. Base Table Or View Already Exists In Laravel Migration
  2. Add Column After A Column In Laravel Migration
  3. Laravel: Change Column Type In Migration
  4. Laravel: Change Column Name In Migration
  5. How To Use Where Date Between In Laravel
  6. How To Add Laravel Next Prev Pagination
  7. Laravel Remove Column From Table In Migration
  8. Laravel: Get Month Name From Date
  9. Laravel: Increase Quantity If Product Already Exists In Cart
  10. How To Calculate Age From Birthdate
  11. How To Check Laravel PHP Version
  12. How To Handle Failed Jobs In Laravel
  13. How To Remove WooCommerce Data After Uninstall
  14. How To Get Latest Records In Laravel
  15. How To Break Nested Loops In PHP Or Laravel
  16. How To Pass Laravel URL Parameter
  17. Laravel Run Specific Migration

That’s it from our end. We hope this article helped you to get year from the date in Laravel.

Please let us know in the comments if everything worked as expected, your issues, or any questions. If you think this article saved your time & money, please do comment, share, like & subscribe. Thank you for reading this post 🙂 Keep Smiling! Happy Coding!

 
 

Leave a Comment