我需要一个随机的4位数字
现在我正在使用rand(1000,9999)总是给我一个4位数字,但我消除了0000-0999作为可能的结果。
如何填充随机数?
(这也最终将被添加到字符串中我需要将int作为字符串强制转换吗?)
感谢
答案 0 :(得分:12)
在像PHP这样的脚本语言中,你不必在99%的情况下进行投射。
填充可以使用
完成sprintf("%04u", rand(0, 9999));
<强>说明强>
sprintf
的第一个参数指定格式
%
留下第二,第三,第四等论点。第一个%
被第二个参数替换,第二个%
被第三个参数替换。0
停留在左侧填充0
的行为。4
停留“至少应打印4个字符”u
保留无符号整数。答案 1 :(得分:6)
sprintf("%04d", rand(0,9999))
应该做你想做的事情
答案 2 :(得分:3)
快速而肮脏......怎么样:
rand(10000,19999)
并取最后四位数字:
substr(rand(10000, 19999), 1, 4)
答案 3 :(得分:3)
str_pad(mt_rand(0, 9999), 4, '0', STR_PAD_LEFT);
使用mt_rand()而不是rand(),它会更好。
答案 4 :(得分:1)