我正在尝试生成条形码,我需要它是20个数字。条形码要求引用必须为20个数字。
所以如果我的参考号是67585它必须是20个数字,比如000000000000000 67585
如果参考号为48938299546342条形码编号必须是20个数字,如0000048938299546342
我试过这个代码,但它不能正常工作
str_pad(str_replace('', '',$reference), 20, '0', STR_PAD_LEFT);
试试这个-
str_pad($reference, 20, '0', STR_PAD_LEFT);
或者,
sprintf('%20d', $reference);
看起来不错(请参阅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;
}
使用sprintf
sprintf函数的Docs链接。
http://php.net/manual/en/function.sprintf.php
<?php
$num = 4;
$num_padded = sprintf("%02s", $num);
echo $num_padded; // returns 04
?>
PHP在个位数前加前导零,动态