El zerofill (relleno con ceros) en PHP es una técnica que permite formatear un número entero para que tenga un ancho específico, completando los espacios faltantes con ceros a la izquierda.
str_pad()
En PHP, la función str_pad()
es la forma más común y eficiente de realizar un zerofill. Este método permite especificar la longitud deseada del número y el carácter de relleno.
$numero = 42;
$longitud = 5;
$numeroConCeros = str_pad($numero, $longitud, "0", STR_PAD_LEFT);
echo $numeroConCeros; // Salida: 00042
Explicación:
$numero
: es el número entero que se desea formatear.
$longitud
: es el ancho total que debe tener el número final.
"0"
: es el carácter que se usará para rellenar los espacios faltantes.
STR_PAD_LEFT
: indica que los ceros se agregarán a la izquierda.
sprintf()
Otra opción es utilizar la función sprintf()
, que es útil cuando trabajas con formatos más complejos.
sprintf()
:
$numero = 42;
$longitud = 5;
$numeroConCeros = sprintf("%0{$longitud}d", $numero);
echo $numeroConCeros; // Salida: 00042
Ventajas de sprintf():
$numeros = [1, 23, 456];
$longitud = 5;
$numerosConCeros = array_map(function($num) use ($longitud) {
return str_pad($num, $longitud, "0", STR_PAD_LEFT);
}, $numeros);
print_r($numerosConCeros);
// Salida: Array ( [0] => 00001 [1] => 00023 [2] => 00456 )
function aplicarZerofill($numero, $longitud = 5) {
return str_pad($numero, $longitud, "0", STR_PAD_LEFT);
}
echo aplicarZerofill(7, 3); // Salida: 007
Jorge García
Fullstack developer