senza stare li a fare tante complicazioni:

Codice PHP:
setlocale(LC_ALL'it_IT@euro''it_IT''it');
$data=gmstrftime("%d %b %H:%M"time());
echo 
$data
php è meno stupido di quanto pensi

per la seconda invece della %d ci metti %j....


Codice PHP:
setlocale(LC_ALL'it_IT@euro''it_IT''it');
$data=gmstrftime("%j %b %H:%M"time());
echo 
$data