赞
踩
我正在寻找一个函数,我可以在PHP中传递一个数组和一个种子,并获得一个“随机化”数组。如果我再次通过相同的数组和同样的种子,我将得到相同的输出。
我试过这个代码
//sample array
$test = array(1,2,3,4,5,6);
//show the array
print_r($test);
//seed the random number generator
mt_srand('123');
//generate a random number based on that
echo mt_rand();
echo "\n";
//shuffle the array
shuffle($test);
//show the results
print_r($test);
但它似乎不起作用有什么想法可以做到这一点吗?
更新
目前的答案是使用PHP 5.1和5.3,而不是5.2。就这样发生我想运行的机器是使用5.2。
任何人都可以举个例子,不用mt_rand?在php 5.2中它是“破碎的”,因为它不会给出相同种子的相同序列的随机数。请参阅php mt_rand page和bug tracker了解此问题。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。