Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

date_create_from_format equivalent for PHP 5.2 (or lower)

Tags:

date

php

I'm working with PHP 5.3 on my local machine and needed to parse a UK date format (dd/mm/yyyy). I found that strtotime didn't work with that date format, so I used date_create_from_format instead - which works great.

Now, my problem is that my staging server is running PHP 5.2, and date_create_from_format doesn't work on that version. (It's a shared server, and wouldn't have a clue how to upgrade it to PHP 5.3)

So is there a similar function to date_create_from_format that I can use? Bespoke or PHP native?

like image 566
leekelleher Avatar asked Apr 12 '10 10:04

leekelleher


2 Answers

If strptime is not available to you, then here is a different idea. It is similar to Col. Shrapnel's approach but instead uses sscanf to parse the date-part values into variables and uses those to construct a new DateTime object.

list($day, $month, $year) = sscanf('12/04/2010', '%02d/%02d/%04d');
$datetime = new DateTime("$year-$month-$day");
echo $datetime->format('r');
like image 96
salathe Avatar answered Sep 19 '22 16:09

salathe


Try strptime() which is available in PHP 5.1 and above.

like image 36
Amber Avatar answered Sep 20 '22 16:09

Amber