The strtotime function can convert a string to a timestamp.
A timestamp can be converted to date format. So it is best to store the dates as timestamp in the database, and just output them in the format you like.
If
$date = "Tuesday, January 14, 2011 @ 10:39 am";
In order to convert that to a timestamp, we need to get rid of the "@" sign, and we can use the remaining string as a parameter for the strtotime function.
So we have
$date = str_replace("@ ","",$date);
$date = strtotime($date);
now $date is a timestamp
and we can say:
echo date("d M Y",$date);
Hope it helps you.