Cómo convertir números largos a un formato amigable (1000 a 1k, etc) utilizando PHP o JavaScript

Los números son algo muy común en el día a día, es de esperarse que inclusive en la web nos encontremos con ellos. Algo bastante molesto en algunas ocasiones es que los números pueden llegar a ser demasiado largos cuando se trata de un contenedor pequeño, es ahí donde convertir 1000 en 1k o 1000000 en 1M puede resultar mucho más cómodo y amigable para el usuario, pues, a todos nos da pereza contar los ceros.

Navegando por la red me encontré con un pequeño script de JavaScript el cual se encarga de convertir dichos números en su equivalente «más amigable», de modo que me di a la tarea de crear un equivalente a dicho script en PHP. Su uso no es complicado, sólo basta agregar el numero y el script se hará cargo del resto.

Tal y cómo se explicó en el articulo JavaScript básico: funciones, sólo se tiene que llamar(ejecutar) la función.

Convertir números en un formato amigable – JavaScript

function numberto(n){
x=(''+n).length;
p=Math.pow;
d=p(10,true);
x-=x%3;
return Math.round(n*d/p(10,x))/d+" kMGTPE"[x/3];
}

Ejemplo de uso: alert( numberto(1800) );

Convertir números en un formato amigable – PHP

function numberto($n) {
$x= strlen($n);
$d=pow(10,true);
$x-=$x%3;
return round($n*$d/pow(10,$x))/$d ." kMGTPE"[$x/3];
}

Ejemplo de uso: echo numberto(1800);

Demo

Por último, sólo queda finalizar con una simple demo.