Puedes crear una función para ello. Por ejemplo:
Código PHP:
function formato($cadena,$formato,$separador) {
$puntero = 0;
$result = "";
for ($i=0;$i<count($formato);$i++) {
$subs = substr($cadena,$puntero,$formato[$i]);
$puntero+= $formato[$i];
$result.= $subs.$separador;
}
return substr($result,0,strlen($result)-1);
}
$formato = array(3,4,3,1);
echo formato("ABCDEFGHIJK",$formato,"-");
En el array formato le pasas las posiciones donde quieres poner el separador
Albert Lanchas
http://www.albertlanchas.com