printf("%04d", $num);
edit:
riletto devi assegnarla quindi
$valore = sprintf("%04d", $num);
ma se non erro puoi gestire la cosa direttamente da mysql e dopo utilizzare
$num=(string)$num; altrimenti perdi gli zeri