Convert UTC Time to Local Time in Laravel?

Introduction

Have you ever struggled with converting UTC time to local time in your Laravel project? Don’t worry, I’ve got you covered! In this article, we will explore the best practices and techniques to convert UTC time to local time in Laravel, ensuring that your application works seamlessly across different time zones.

Why is it important?

Handling time zone conversions is crucial when dealing with global applications or when your users are spread across different time zones. By converting UTC time to local time, you can provide a personalized experience to your users, displaying dates and times in their local time zone. This not only enhances user experience but also ensures accuracy and avoids confusion.

The Carbon Library

Laravel provides a powerful library called Carbon for working with dates and times. Carbon makes it easy to manipulate and convert time zones, making it the perfect tool for converting UTC time to local time in Laravel.

Example 1:

Example with custom date and time:

<?php

     

namespace App\Http\Controllers;

    

use Illuminate\Http\Request;

use Carbon\Carbon;

    

class UserController extends Controller

{

    /**

     * Display a listing of the resource.

     *

     * @return \Illuminate\Http\Response

     */

    public function index(Request $request)

    {

        $time = Carbon::parse('2023-10-12 18:25:48')

                        ->setTimezone('Asia/Kolkata')

                        ->toDateTimeString();

                          

        dd($time);

    }

}

Output :-

2023-10-12 18:25:48

Example 2:

<?php

     

namespace App\Http\Controllers;

    

use Illuminate\Http\Request;

use Carbon\Carbon;

    

class UserController extends Controller

{

    /**

     * Display a listing of the resource.

     *

     * @return \Illuminate\Http\Response

     */

    public function index(Request $request)

    {

        $time = Carbon::now()

                    ->setTimezone('Asia/Kolkata')

                    ->toDateTimeString();

  

        dd($time);

    }

}

Output:

2023-10-12 18:29:56

I hope it will help you….!!!

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x