with solo round porcentaje number_format mostrar money_format money mexico lc_monetary formato floatval decimals decimales php numbers format

solo - number_format php



¿Cómo formatear números con 00 prefijos en php? (6)

Estoy tratando de generar números de factura. Siempre deben tener 4 números, con ceros a la izquierda, por ejemplo:

  • 1 -> Factura 0001
  • 10 -> Factura 0010
  • 150 -> Factura 0150

etc.


Prueba esto:

$x = 1; sprintf("%03d",$x); echo $x;


Use str_pad () .

$invID = str_pad($invID, 4, ''0'', STR_PAD_LEFT);


Uso (s) printf

printf(''%04d'',$number);


printf() funciona bien si siempre está imprimiendo algo, pero sprintf() le da más flexibilidad. Si tuviera que usar esta función, el $threshold sería 4 .

/** * Add leading zeros to a number, if necessary * * @var int $value The number to add leading zeros * @var int $threshold Threshold for adding leading zeros (number of digits * that will prevent the adding of additional zeros) * @return string */ function add_leading_zero($value, $threshold = 2) { return sprintf(''%0'' . $threshold . ''s'', $value); } add_leading_zero(1); // 01 add_leading_zero(5); // 05 add_leading_zero(100); // 100 add_leading_zero(1); // 001 add_leading_zero(5, 3); // 005 add_leading_zero(100, 3); // 100 add_leading_zero(1, 7); // 0000001


while ( strlen($invoice_number) < 4 ) $invoice_num = ''0'' . $invoice_num;


Utilice sprintf : http://php.net/function.sprintf

$number = 51; $number = sprintf(''%04d'',$number); print $number; // outputs 0051 $number = 8051; $number = sprintf(''%04d'',$number); print $number; // outputs 8051