/ PHP

Previous Article

Useful PHP date function

Next Article

Here's a useful function that I use a lot for taking a database date and converting it into something human readable.

function dateFormat($dbDate, $newFormat='jS F Y') {
    // split the date into it's component parts
    $year=substr($dbDate, 0,4);
    $month=substr($dbDate, 5,2);
    $day=substr($dbDate, 8,2);
    $hour=substr($dbDate, 11,2);
    $minute=substr($dbDate, 14,2);
    $second=substr($dbDate, 17,2);

    // recompile in the required format
    return date($newFormat, mktime($hour,$minute,$second,$month,$day,$year));
}

Uses

The function can be used in the following way.

echo dateFormat("2010-11-01 18:00:00", "l jS")

returns

Monday 1st

echo dateFormat("2010-11-01 18:00:00")

returns

1st November 2010

Breakdown

Now I'll break the code down

function dateFormat($dbDate, $newFormat='jS F Y') {

This line sets the function name dateFormat. It also sets the parameters used throughout the function $dbDate and $newFormat also included is a default parameter for $newFormat. This is used if you do not pass a parameter when calling the function.

// split the date into it's component parts
$year=substr($dbDate, 0,4);
$month=substr($dbDate, 5,2);
$day=substr($dbDate, 8,2);
$hour=substr($dbDate, 11,2);
$minute=substr($dbDate, 14,2);
$second=substr($dbDate, 17,2);

This splits the passed date into it's component parts so that it can be reformed into the desired format.

// recompile in the required format
return date($newFormat, mktime($hour,$minute,$second,$month,$day,$year));

The final line of the function uses the mktime and date function to reprocess your date into the $newFormat supplied.

I hope you find this function useful, I use it for many sites with great success.

Avatar of Clive Walkden

Clive Walkden

Latest Articles

Linux command line tools, installations etc

Linux

Terraform Installation

A quick installation guide for Terraform on Ubuntu 18.04

Bitcoin - Cryptocurrency not just for geeks

Bitcoin

RollerCoin Intro

An introduction to the RollerCoin site and how you can use it to mine your own coins

Magento 2 Blog Posts

Magento 2

Magento 2.4.x Writing to a Log File

How to log to information to a file in different Magento 2.4.x versions