$input = '03-Dec-10';
$date = DateTime::createFromFormat('d-M-y', $input);
echo $date->format('Ymd'); // or possibly 'Y-m-d'
Isso produzirá
20101203
, que é presumivelmente o que você deseja. Se não for exatamente o que você procura, dê uma olhada aqui
. Você também pode fazer o inverso:
$input = '20101203';
$date = DateTime::createFromFormat('Ymd', $input);
echo $date->format('d-M-y');