$input = '03-Dec-10';
$date = DateTime::createFromFormat('d-M-y', $input);
echo $date->format('Ymd'); // or possibly 'Y-m-d'
To wygeneruje 20101203
, co prawdopodobnie jest tym, czego chcesz. Jeśli nie jest to dokładnie to, czego szukasz, zajrzyj tutaj
.
Możesz też zrobić odwrotnie:
$input = '20101203';
$date = DateTime::createFromFormat('Ymd', $input);
echo $date->format('d-M-y');