That's going to be hard, because if you use a function such as [man]strtotime/man, there is some ambiguity involved in which set is the month and which is the day. Is 06-03-2006 in the month of June or March?
What you might need to do is create functions that convert the different types of dates, and run each value through it's matching function. For example:
function mdy_to_ymd($date) {
$date = explode('-', $date);
if(count($date) != 3) {
die('Invalid date passed: ' . implode('', $date));
} else {
return $date[2] . '-' . $date[0] . '-' . $date[1];
}
}
would be one function. I'm sure you can create the second based on that example.
Point is, you'd have to know which format the date is in and run it through the correct function. Also, if you want the functions to work with both - and / as separators, you'd have to use the [man]split/man command instead of [man]explode/man, such as:
$date = split('[/-]', $date);