Pregunta
Quiero contar con 0. Quiero decir si
$ x = 002 $ y = 999
Ahora quiero contarlo manteniendo el 00.
for ( $i = $x ; $i <= $y; $i++ )
{
echo $i;
}
pero tiene eco - 002, 3, 4, 5
Quiero que cuente manteniendo el 00. como 005, 006, 007, 008, 009, 010, 011, 012.
Solución
for ($i = $x ; $i <= $y; $i++)
{
printf('%03d', $i);
}
Otros consejos
(s) printf es tu amigo para este, hay muchos ejemplos útiles en el manual -página, pero te gustaría:
printf ('% 03d', $ i);
La idea es que no lo cuentes así, solo lo muestras así. Espero que entiendas que 00 es solo para presentación. Saludos.
use printf:
for ( $i = $x ; $i <= $y; $i++ ) {
printf("%03d", $i);
}
printf ("% 03d " ;, $ i);
Intente usar formatos de números
Consulte aquí: http://us2.php.net /manual/en/function.number-format.php
Simplemente desplácese por la parte inferior.
Saludos
str_pad método:
echo str_pad($i, 3, '0', STR_PAD_LEFT);
No puede hacer eso si $ i es un entero. La primera vez que asigna $ i se almacena como una cadena, después de hacer $ i ++ se convierte en un entero.
Si debe mantener el formato original, trate $ i como una cadena y haga toda la aritmética en $ i usando funciones personalizadas, no la compilación en aritmética de enteros.
La solución más fácil es dejar que $ i sea un número entero y anteponer ceros a la izquierda cuando se genera $ i.