PHP为数字添加零

时间:2013-12-04 11:14:22

标签: php string numbers

我试图生成条形码,我需要它是20个数字。条形码要求引用必须是20个数字。

所以如果我的参考是67585 它必须是20个数字,如00000000000000067585

如果参考是489382995463342 条形码编号必须为20个数字,如00000489382995463342

我尝试了这段代码,但它无法正常工作

str_pad(str_replace('', '',$reference), 20, '0', STR_PAD_LEFT);

3 个答案:

答案 0 :(得分:1)

试试这个 -

str_pad($reference, 20, '0', STR_PAD_LEFT);

OR,

sprintf('%20d', $reference);

答案 1 :(得分:1)

看起来很好(见http://3v4l.org/UKBqS),您如何查看/检查最终价值?

<?php
if ( ! defined('PHP_EOL')) {
    define('PHP_EOL', "\n");
}

foreach (array('67585', '489382995463342') as $test) {
    echo str_pad($test, 20, '0', STR_PAD_LEFT), PHP_EOL;
}

答案 2 :(得分:1)

使用sprintf

用于sprintf功能的文档链接。

http://php.net/manual/en/function.sprintf.php

<?php
$num = 4;
$num_padded = sprintf("%02s", $num);
echo $num_padded; // returns 04
?>

PHP prepend leading zero before single digit number, on-the-fly