- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我只是想知道,如果您抽取 5 位数字,mt_rand() 数字有多独特?在这个例子中,我试图用这个函数得到一个包含 500 个随机数的列表,其中一些是重复的。
http://www.php.net/manual/en/function.mt-rand.php
<?php
header('Content-Type: text/plain');
$errors = array();
$uniques = array();
for($i = 0; $i < 500; ++$i)
{
$random_code = mt_rand(10000, 99999);
if(!in_array($random_code, $uniques))
{
$uniques[] = $random_code;
}
else
{
$errors[] = $random_code;
}
}
/**
* If you get any data in this array, it is not exactly unique
* Run this script for few times and you may see some repeats
*/
print_r($errors);
?>
可能需要多少位数才能确保循环中抽取的前 500 个随机数是唯一的?
最佳答案
如果数字真的是随机的,那么数字就有可能重复出现。有多少位数并不重要 - 添加更多位数可以大大降低重复的可能性,但总是有可能。
你最好检查是否有冲突,然后循环直到没有冲突:
$uniques = array();
for($i = 0; $i < 500; $i++) {
do {
$code = mt_rand(10000, 99999);
} while(in_array($code, $uniques));
$uniques[] = $code
}
关于php - 一个 5 位数的 mt_rand() 数字有多独特?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23586229/
我一直在使用 mt_rand(1,6),根据生成的随机整数,将使用不同的 CSS 样式(用于 MVT)。 就 PHP 函数而言,Analytics 会说唯一访问者(总共约 5K)存在巨大差异(在某些情
PHP 随机数是可预测的吗?如果是这样,预测 1 到 32 范围内的随机数有多难?有什么方法可以让它不可预测吗? 最佳答案 关于编程中随机函数的讨论由来已久。 看看这个:http://en.wiki
这个函数总是有问题,我的 mt_rand() 给我相同的数字: $hex = 'f12a218a7dd76fb5924f5deb1ef75a889eba4724e55e6568cf30be634706
偏见的定义是什么: The distribution of mt_rand() return values is biased towards even numbers on 64-bit build
我知道 PHP 的 mt_rand() 不应该用于安全目的,因为它的结果在加密方面不强。然而,许多 PHP 代码就是这样做的,或者在没有更好的随机性来源时将其用作后备。 那么情况有多糟糕呢? mt_r
我看到了那些文章: http://phpsecurity.readthedocs.org/en/latest/Insufficient-Entropy-For-Random-Values.html h
我正在编写一个抽奖程序,其中人们有一些票,这些票由 1 到 100 之间的自然数标记。 我用mt_rand(1,100)生成中奖号码,然后输出到网站上,让大家看到。 现在我做了一些研究,并从 Mers
mt_rand() 函数中传递的值是否有最大范围?它是否有最大“最高”数量? 上述限制是否取决于平台? mt_rand() 的速度是否取决于传入的范围? 换句话说,mt_rand(0,10000000
我在我的网站上用类似的东西做了两个基本的 A-B-C 测试 if(mt_rand(0,2) == 0){ //THROW IN RE HERE }elseif(mt_rand(0,2) == 1){
以下语句未返回任何结果。我检查了 SQL 语句,它们是正确的,而且似乎没有编码错误。 MaxResult = $row['resultid']; $row = db_fetch_item("S
MYSQL 有类似 mt_rand 的函数吗?我到处都找过了,但似乎找不到。 最佳答案 DELIMITER $$ CREATE FUNCTION `my_rand`(`arg_min` INT, `a
实际上,在我的 php 应用程序中,我想为每个用户分配一个唯一的数字代码。为此,我正在使用 mt_rand(0,100000000)。我希望它为数百万不同的用户生成数百万个数字而不重复并将其保存到数据
我有一个大量使用 mt_rand 和 mt_srand 的应用程序,问题是许多主机提供商默认启用 suhosin.mt_srand.ignore,这导致我的应用程序无法正常工作,因为播种没有工作...
这个问题在这里已经有了答案: What's the disadvantage of mt_rand? (2 个答案) 关闭 8 年前。 昨天无意中听到一段关于rand()和mt_rand()的对话,
使用 mt_rand($min, $max) 和 rand($min, $max) 关于速度有什么区别? 最佳答案 更新 从 PHP 7.1 开始,mt_rand 完全取代了 rand,rand 成为
来自 http://php.net/manual/en/function.mt-rand.php : Caution This function does not generate cryptogra
这两种生成顺序但有点独特的数字的方法之间的主要区别是什么?我想使用这样的数字作为 MySQL 数据库中的唯一用户 ID,以及作为密码的盐。 我的理解是,出于集群和索引的原因,这些 ID 应该是连续的(
我只是想知道,如果您抽取 5 位数字,mt_rand() 数字有多独特?在这个例子中,我试图用这个函数得到一个包含 500 个随机数的列表,其中一些是重复的。 http://www.php.net/m
我正在尝试生成河豚哈希,我想知道依赖 mt_rand() 为我生成盐是否足够安全? function blowfish($string, $salt = NULL, $iterations = '08
我会用 PhpUnit 创建一些测试。但是我想测试的 php 文件使用了 mt_rand() 函数。那么我怎样才能创建一个知道 mt_rand() 上次返回值的测试呢?感谢您回答我的问题,抱歉我的英语
我是一名优秀的程序员,十分优秀!