se il valore è simile a questo 3012006 no perchè il secondo parametro della funzione date dev'essere timestamp...

in quel caso dovresti fare:
Codice PHP:

$data 
str_pad("3012006",8,0,STR_PAD_LEFT);
echo 
date("Y-m-d",mktime(0,0,0,substr($data,2,2),substr($data,0,2),substr($data,4,7))); 

ho fatto questo:
Codice PHP:
$data str_pad("3012006",8,0,STR_PAD_LEFT); 
[ http://it.php.net/manual/it/function.str-pad.php ]
per avere una stringa di 8 caratteri poichè, se vedi, nel secondo parametro della funzione date, faccio dei substr() per ottenere dalla stringa i valori del giorno,mese ed anno, così, nel caso avessi una stringa del tipo
12102005 nessun problema,
2122205 creerebbe problemi perchè cambierebbero le posizioni del substr

Spero di essere stato abbastanza chiaro...se non lo sono stato chiedo venia