php rand()省略前导零

时间:2014-08-20 18:15:34

标签: php random

您正在使用以下内容生成4字符数字

 $this->pin = rand(0000,9999)

但是如果结果是0435,则省略前导零。如何在结果中保持前导零?

2 个答案:

答案 0 :(得分:2)

你也可以:

$number = rand(0,9999);
$this->pin = str_pad($number,4,0,STR_PAD_LEFT);

答案 1 :(得分:0)

整数不是字符串,所以你不能有前导零! :-P 但是你可以这样做:

function zfill($str,$n){
  $ret = $str;
  while(strlen($ret)<$n){
    $ret = '0'.$ret;
  }
  return $ret;
}

$this->pin = zfill($this->pin, 4);