[Webinar] Streamline your web hosting managementRegister Today

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 988
  • Last Modified:

Converting the dateTime datatype to AP style date

How to I convert DateTime - 2008-04-24 00:00:00.000 to AP stype date?
AP stype would be:
Jan,
Feb
March
April
May
June
July
Aug
Sept
Oct
Nov
Dec

Is there any function out there?
Any ideas/thoughts?
Thanks
0
martyje
Asked:
martyje
  • 5
  • 2
  • 2
1 Solution
 
Guy Hengel [angelIII / a3]Billing EngineerCommented:
DATENAME(month, yourfield)
0
 
morristhebearCommented:
Using PHP, you could use the function below.

(This will return Jan, Feb, March, ..., Dec; change the M (the first argument for the date function) to match your needs, using these options (http://www.php.net/date)
<?php
	
	function nice_date ($string_date) {
		return date ('M', strtotime ($string_date));
	}
	
?>

Open in new window

0
 
martyjeAuthor Commented:
Sorry, didn't explained it well, that 'll return only the month. I am trying to convert it to the following format
June 23, 2008 etc...
March 04, 2007
Jan 12, 2008

Thanks.
0
The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!

 
Guy Hengel [angelIII / a3]Billing EngineerCommented:
this expression will do:

CONVERT(varchar(11), yourfield, 109)

Open in new window

0
 
morristhebearCommented:
My function can be changed easily to display the date in different formats, for the format you requested, use this instead:
<?php
	
	function nice_date ($string_date) {
		return date ('M d, Y', strtotime ($string_date));
	}
	
?>

Open in new window

0
 
martyjeAuthor Commented:
morristhebear: the function works great but, I am trying to get the date format as in the list above.
It should say March not Mar
Any month that has four letters, it should say the whole month or first there letters such as Jan for January.

Thanks.
0
 
morristhebearCommented:
There's no format for that type of date in the PHP manual.  Maybe this will work though, any month with more than 5 letters (i.e January, February, August, September, October, November, December), show the abbreviation, else show the whole month name (i.e - March, April, May, June, July).
<?php
	
	function nice_date ($string_date) {
		if (strlen(date('F', strtotime ($string_date))) > 5) {
			return date ('M d, Y', strtotime ($string_date));
		} else {
			return date ('F d, Y', strtotime ($string_date));
		}
	}
	
?>

Open in new window

0
 
morristhebearCommented:
Actually, I didn't read what you wanted properly.  I've looked at your list of months you provided and come up with this, this should do the months exactly how you want them, haven't tested though...
<?php
	
	function nice_date ($string_date) {
		$ap_dates = array (
			'Jan', 'Feb', 'March', 'April',
			'May', 'June', 'July', 'Aug',
			'Sept', 'Oct', 'Nov', 'Dec'
		);
		return $ap_dates[date('n')-1] . ' ' . date('d') . ', ' . date('Y');
	}
	
?>

Open in new window

0
 
morristhebearCommented:
Forget the above, that will return todays date in the format you requested.  This should be it:
	function nice_date ($string_date) {
		$ap_dates = array (
			'Jan', 'Feb', 'March', 'April',
			'May', 'June', 'July', 'Aug',
			'Sept', 'Oct', 'Nov', 'Dec'
		);
		return $ap_dates[date('n', strtotime($string_date))-1] . ' ' . 
			   date('d', strtotime($string_date)) . ', ' . 
			   date('Y', strtotime($string_date));
	}

Open in new window

0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 5
  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now