Categories: Development

PHP converting hours, minutes & seconds string to seconds

Converting hours, minutes and seconds (H:i:s) string to just seconds with PHP can be done with an adaptable function that also works for just a minutes and seconds string.

The time string to seconds function:

function timeToSeconds(string $time): int
{
    $arr = explode(':', $time);
    if (count($arr) === 3) {
        return $arr[0] * 3600 + $arr[1] * 60 + $arr[2];
    }
    return $arr[0] * 60 + $arr[1];
}

Example calls:

echo timeToSeconds('6:10');//370

echo timeToSeconds('1:6:14');//3974

The function works by checking if the string after being split, contains 3 elements which are hours, minutes and seconds otherwise it is just minutes and seconds.

Then the correct elements get multiplied by their respective seconds, i.e an hour is 3600 seconds and a minute is 60.

Share

Recent Posts

Kennington reservoir drained drone images

A drained and empty Kennington reservoir images from a drone in early July 2024. The…

2 years ago

Merrimu Reservoir drone images

Merrimu Reservoir from drone. Click images to view larger.

2 years ago

Early September spring shots

Some early September spring shots from a bushwalk, It is still too early for wildflowers.

3 years ago

Cloning an NVMe to SK Hynix Platinum P41 NVMe

I recently needed to clone over a smaller NVMe to a 2TB SK Hynix Platinum…

3 years ago

Using Laravel’s deleteDirectory to delete folders and their contents

If you ever needed a simple solution in Laravel to delete an entire directory and…

3 years ago

How to allow only 1 user to register in a Laravel application

How to enforce only one user to register or be registered in a Laravel web…

3 years ago