相关疑难解决方法(0)

mt_rand()和rand()之间的区别

使用mt_rand($min, $max)rand($min, $max)速度有什么区别?

php random optimization performance

34
推荐指数
2
解决办法
3万
查看次数

PHP相当于javascript Math.random()

我需要一个PHP函数,生成与javascript Math.random()相同的种子相同的随机数.

关于math.random()的MDN:

随机数生成器从当前时间播种,如在Java中.

到目前为止我尝试了PHP的rand()生成类似的东西:

srand( time() ); // I use time as seed, like javascript does
echo rand();
Output: 827382
Run Code Online (Sandbox Code Playgroud)

并且javascript似乎以自己的方式生成随机数:

Math.random(); Output: 0.802392144203139
Run Code Online (Sandbox Code Playgroud)

我需要与math.random()等效的PHP代码,而不是新的javascript代码.我无法改变javascript.

javascript php random time

6
推荐指数
1
解决办法
1万
查看次数

是mt_rand()比rand()更安全

昨天我无意中听到一个关于rand()和的话题mt_rand(),一位同事说这两个都是可以预测的,你应该使用不同的功能?我想知道,我知道rand()在某种程度上是可以预测的,并且经过一些谷歌搜索.mt_rand()如果我正确地提到这一点,甚至可以预测.

为此,我写了一小段代码,它创建了一个图像:

<?php
header("Content-type: image/png");
$im = imagecreatetruecolor(512, 512) or die("Cannot Initialize new GD image stream");
$white = imagecolorallocate($im, 255, 255, 255);
$black = imagecolorallocate($im, 0, 0, 0);
for ($y = 0; $y < 512; $y++) {
    for ($x = 0; $x < 512; $x++) {
        if (rand(0, 1)) {
            imagesetpixel($im, $x, $y, $white);
        }
        else{
            imagesetpixel($im, $x, $y, $black);
        }
    }
}
imagepng($im); imagedestroy($im);

?>
Run Code Online (Sandbox Code Playgroud)

此代码输出此图像,因为您可以看到它具有某种模式: rand()图片

mt_rand()函数给了我这个输出: mt_rand()图片

现在我的问题是,mt_rand() …

php

5
推荐指数
1
解决办法
543
查看次数

PHP生成随机数

我需要在我的脚本中生成大约5,000个随机数,但CPU速度很快,我在随机数中看到了趋势.

例如,在100次第一次迭代中,我得到80和70之间的值与rand(0,100);这可能是一个真正的不方便.

有没有办法解决这个问题,或者2012年的随机性是否已经无法实现?

我相信有可能从执行随机次数的函数生成随机数...但我无法找出一个.

php

2
推荐指数
1
解决办法
445
查看次数

标签 统计

php ×4

random ×2

javascript ×1

optimization ×1

performance ×1

time ×1