Dar formato a un numero

Iniciado por Kizar, 9 Abril 2007, 19:00 PM

0 Miembros y 1 Visitante están viendo este tema.

Kizar

Yo tengo un numero y quiero que me devuelva lo de al lado:

Citar001 => 0:01
1    => 0:01
99  => 0:99
201  => 2:01

El formato siempre es el mismo X:XX, no voy a usar numero mayores de 999 por lo tanto con eso me vale, me gustaria saber si hay alguna funcion que a partir de un numero como los ejemplo que he pusto me devuelva lo otro.

Ertai

No.

Haz lo siguiente.

Si strlen($cadena)<3 => Agregale ceros.

Una vez todos tengan strlen = 3, corta la cadena empezando por el final dos posiciones, cortala otra vez una posicion por delante, y concatena todo con el char ":".

Usa la funcion substr. Con solo esta, te vale.
Si la felicidad se comprara, entonces el dinero sería noble.


void rotar_by_ref(int& a, int& b) {
   /* Quien dijo que no se podia sin una variable temporal? */
   *a = *a ^ *b;
   *b = *a ^ *b;
   *a = *a ^ *b;
}

Kizar

Asi lo estoy haciendo de momento, pero es que es un poco engorroso, por eso pregunte.

Azielito

llena con ceros hasta 3 la cadena con str_pad();
http://www.php.net/str_pad

y, luego le das formato con round();
http://www.php.net/round

y por ultimo reemplazas "." por ":" con str_replace();
http://www.php.net/manual/es/function.str-replace.php

como es algo que usaras muy seguido podras ahcer una funcion para darle formato :)

tambien intenta con number_format();
http://www.php.net/manual/es/function.number-format.php

Kizar

Fue la funcion str_pad() la que me gusto ;)