Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 生成一个N位随机数_Php_Security_Random_Mcrypt - Fatal编程技术网

Php 生成一个N位随机数

Php 生成一个N位随机数,php,security,random,mcrypt,Php,Security,Random,Mcrypt,我想使用PHPmt_rand()函数生成一个6位随机数 我知道PHPmt_rand()函数只接受两个参数:最小值和最大值 我该怎么做呢?像这样的事情 <?php $a = mt_rand(100000,999999); ?> 或者这个,那么第一个数字可以是0,在第一个例子中,它只能是1到9吗 for ($i = 0; $i<6; $i++) { $a .= mt_rand(0,9); } for($i=0;$i如果第一个成员number可以是零,则需要格式

我想使用PHP
mt_rand()
函数生成一个6位随机数

我知道PHP
mt_rand()
函数只接受两个参数:最小值和最大值

我该怎么做呢?

像这样的事情

<?php 
$a = mt_rand(100000,999999); 
?>

或者这个,那么第一个数字可以是0,在第一个例子中,它只能是1到9吗

for ($i = 0; $i<6; $i++) 
{
    $a .= mt_rand(0,9);
}

for($i=0;$i如果第一个成员number可以是零,则需要格式化它以在必要时用零填充它

<?php 
$number = mt_rand(10000,999999);
printf("[%06s]\n",$number); // zero-padding works on strings too
?>

或者,如果它可以是零形式,您可以这样做,以:

<?php 
$number = mt_rand(0,999999);
printf("[%06s]\n",$number); // zero-padding works on strings too
?>

据了解,应该是这样的

function rand6($min,$max){
    $num = array();

    for($i=0 ;i<6;i++){
    $num[]=mt_rand($max,$min);

    }
return $num;
}
函数rand6($min,$max){
$num=array();

对于($i=0;i您可以这样内联操作:

$randomNumbersArray = array_map(function() {
    return mt_rand(); 
}, range(1,6));
Array
(
    [0] => 1410367617
    [1] => 1410334565
    [2] => 97974531
    [3] => 2076286
    [4] => 1789434517
    [5] => 897532070
)
或简单方式,具有以下功能:

$randomNumbersArray = giveMeRandNumber(6);

function giveMeRandNumber($count)
{
    $array = array();
    for($i = 0; $i <= $count; $i++) {
        $array[] = mt_rand(); 
    }
}
示例:

print rand() . "<br>"; 
//generates and prints a random number
print rand(10, 30); 
//generates and prints a random number between 10 and 30 (10 and 30 ARE included)
print rand(1, 1000000); 
//generates and prints a random number between on and one million
print rand()。“
”; //生成并打印一个随机数 打印兰特(10,30); //生成并打印10到30之间的随机数(包括10和30) 打印兰特(1000000); //生成并打印一个介于on和一百万之间的随机数


您可以使用以下代码


这里是mt_rand(最小值,最大值);
最小值=指定要返回的最小值。
max=指定要返回的最大数字

`

    <?php
//If you wanna generate only numbers with min and max length:
        function intCodeRandom($length = 8)
        {
          $intMin = (10 ** $length) / 10; // 100...
          $intMax = (10 ** $length) - 1;  // 999...

          $codeRandom = mt_rand($intMin, $intMax);

          return $codeRandom;
        }
?>
  <?php 
  $num = mt_rand(100000,999999); 
  printf("%d", $num);
  ?>