0

I have a dynamically allocated date from a search engine api results set entered into a multidimensional array, $search_results['Date']

There are two types of Date Data returned, first engine returns, for three result tests:

  1. Example 1: 2013-07-22T12:00:03Z
  2. Example 2: 2013-07-23T18:18:15Z
  3. Example 3: 2013-07-21T23:57:04Z

And for the same items, different engine:

  1. Example 1: 1374495037
  2. Example 2: 1374528579
  3. Example 3: 1374515617

I was hoping somebody here may have had experience on formatting dates and may be able to help me out?

I would like the format returned to be:

22nd July, 2013. 12.00pm

However the time part is not strictly necessary, but it would be nice to have the date sorted properly.

It seems the second engine returns the date in a bizarre format, can anybody figure it out? I am from Europe, we do dates different to those of you in America!?

Does anybody have any suggestions on how to format these dates?

Thanks Guys.

Tom
  • 561
  • 8
  • 16
  • 1
    Have you made any research? What are the results of it? – zerkms Jul 23 '13 at 20:45
  • 1
    Have you tried putting the example 1 date string into strtotime() and seeing if strtotime can already interpret it correctly? My best guess for the first examples is that the T is hard coded in and that the Z is for Zulu / time zone. – phpmeh Jul 23 '13 at 20:46

1 Answers1

2

for first example, you can use first strtotime(), a function that converts datetime to UNIX timestamp like this:

$date = date('d/m/Y H:i:s',strtotime('2013-07-23T18:18:15Z'));
echo $date.'<br/>'; //put here just for  testing

and for second example you already have string as UNIX timestamp, so you don't need strtotime()

$date = date('d/m/Y H:i:s','1374495037');
echo $date.'<br/>';//put here just  for testing

format that you would like to return would be:

date('jS F, Y. h.ia',$unix_timestamp);

for other options for date formats consult: http://php.net/manual/en/function.date.php

Nikola Kirincic
  • 3,651
  • 1
  • 24
  • 28