Hmm, if when you store it in the database you stored the date as a timestamp, then whenever you read it out you can format the date how you like. This seems to me the best way to store dates in the database.
However, it can be done using the format you've stored the dates in at the moment. Rather than create a code example from scratch, I'll use and slightly modify some code I saw here earlier.
//Assumes you've read the date from the database into $date_input
//allows you to change database stored format easily later on
$format = "yyyy-mm-dd";
$pos = array();
$pos['year'] = strpos($format, "yyyy");
$pos['month'] = strpos($format, "mm");
$pos['day'] = strpos($format, "dd");
//Extract the year/month/day from $date_input
$date_year = substr($date_input, $pos['year'], $pos['year'] + 3);
$date_month = substr($date_input, $pos['month'], $pos['month'] + 1);
$date_day = substr($date_input, $pos['day'], $pos['day'] + 1);
//Get the timestamp for that date
$date_timestamp = mktime( 0, 0, 0, $date_month, $date_day, $date_year);
//Finally, use the timestamp to generate a date() formatted date
$date_friendly = date("l jS F, Y", $date_timestamp);
/* Adapted from matt_4013's example at...
http://www.phpbuilder.com/board/showthread.php?threadid=10243071 */
So, if the $date_input read from the database was "2003-06-12" then $date_friendly would come out with that date format string as 'Thursday 12th June, 2003". To change that format, look up the date function in the PHP manual - I gave the link in my first post above.
You might be able to use strtotime() as mentioned above rather than extracting the year/month/day from the database date, but I've never used that myself.
Hope that helps,
ristuart
Edit: But the code given above while I was posting looks much better! I'd go for that, or for storing the date as a timestamp to start with and then using date() to format it however you like when you've read it out. Probably more future proof that way, in case you need to use it in a different format at all.