Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/274.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.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 随机4位数字,不包括数字8和9_Php - Fatal编程技术网

Php 随机4位数字,不包括数字8和9

Php 随机4位数字,不包括数字8和9,php,Php,我需要生成一个随机的4位数字,但不包括生成中的8和9 这是我现在使用的代码,但它显然不排除8和9 rand(pow(10, 4 - 1), pow(10, 4) - 1); 这应该适合您: 在这里,我只是得到随机数,然后我将其转换为基数8(0-7,表示没有8或9)。最后,我简单地取了前4位数字 这应该适合您: 在这里,我只是得到随机数,然后我将其转换为基数8(0-7,表示没有8或9)。最后,我简单地取了前4位数字 什么样的 $randomNumber = rand(0,7) . rand(0,

我需要生成一个随机的4位数字,但不包括生成中的8和9

这是我现在使用的代码,但它显然不排除8和9

rand(pow(10, 4 - 1), pow(10, 4) - 1);

这应该适合您:

在这里,我只是得到随机数,然后我将其转换为基数8(
0-7
,表示没有8或9)。最后,我简单地取了前4位数字


这应该适合您:

在这里,我只是得到随机数,然后我将其转换为基数8(
0-7
,表示没有8或9)。最后,我简单地取了前4位数字

什么样的

$randomNumber = rand(0,7) . rand(0,7) . rand(0,7) . rand(0,7);
什么样的

$randomNumber = rand(0,7) . rand(0,7) . rand(0,7) . rand(0,7);

这也行得通

$allowedNumbers = range(0, 7);
$digits = array_rand($allowedNumbers, 4);
$number = '';
foreach($digits as $d){
    $number .= $allowedNumbers[$d];
}

echo $number;

这里的好处是,您可以通过创建一个允许的数字数组来指定允许的字符。它还允许您包含数组中的任何字符,包括字母或单词。

这也可以

$allowedNumbers = range(0, 7);
$digits = array_rand($allowedNumbers, 4);
$number = '';
foreach($digits as $d){
    $number .= $allowedNumbers[$d];
}

echo $number;

这里的好处是,您可以通过创建一个允许的数字数组来指定允许的字符。它还允许您从包含字母或单词的数组中包含任何字符。

当您说“排除8和9”时,您的意思是在任何位置吗?或者以8或9结尾的数字。那么,也许实际的要求是“八进制数”?那么,当你说“排除8和9”时,你的意思是在任何地方吗?或者以8或9结尾的数字。那么,也许实际的要求是“八进制数”?那么,这也是一个很好的技巧,使用
array\u rand()
!(由于
array\u rand()
返回键,因此它可以是包含任何类型数据的任何数字数组;OP也需要4位数字,所以请快速将3改为4:)@Rizier123 yea,我忘记了键的内容并将其修复。然而,这只是一个意外,它将返回相同的结果,因为对range的调用将具有与值相同的键(因为range从0开始,就像键一样)。还有
array\u rand()
!(由于
array\u rand()
返回键,因此它可以是包含任何类型数据的任何数字数组;OP也需要4位数字,所以请快速将3改为4:)@Rizier123 yea,我忘记了键的内容并将其修复。但是,这只是偶然的,它将返回相同的结果,因为对range的调用将具有与值相同的键(因为range与键一样从0开始)。