这是一件简单的事情,但我没有得到答案。
我生成的自动生成id连接年份100001,100002就是这样,在这10年是0001年是自动生成数字。当我分割年份和数字然后为0001增加一个值是2但我需要为0002。
Adding value is 0001+1, 0002+1, 0010+1, 0099+1
Now the answer are 2, 3, 11, 100 like that
But i need like that 0002,0003,0011,0100
提前致谢。
答案 0 :(得分:4)
$var = sprintf ('%04d', $var);
请参阅sprintf manual。
答案 1 :(得分:1)
0001不是数字,它是一个字符串。当你向它添加1时,PHP将其转换为数字(1),然后将其加1,所以最终得到2.你要做的是用0填充数字,将其转换回字符串。您可以像其他人建议的那样使用sprintf,或者使用str_pad。
str_pad(1, 4, '0', STR_PAD_LEFT);
答案 2 :(得分:0)
您可以使用优秀的旧版sprintf来格式化数字。
$a = 1;
$f = sprintf("%06s", $a);
echo $f;
应打印“000001”。