Rumah > pembangunan bahagian belakang > tutorial php > 请教一下,用PHP如何生成50万个不重复的8位阿拉伯数字?

请教一下,用PHP如何生成50万个不重复的8位阿拉伯数字?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2016-06-23 14:02:28
asal
1179 orang telah melayarinya

请教一下,用PHP如何生成50万个不重复的8位阿拉伯数字。代码怎么样写?求帮助?急。。求完整的代码。自动回车空行。。谢谢各位前辈。。


回复讨论(解决方案)

for( $i = 0 ; $i 

for( $i = 10000000 ; $i 

for( $i = 10000000 ; $i  你也来这里??你不是经常混水区的吗。。。。。

你是干php的?好奇而己。。。。。

function rand_num(&$num){	$n = rand(10000000,99999999);	if(in_array($n,$num))	{		rand_num(&$num);	}	return $n;}for($i=0;$i<500000;$i++){	$num[] = rand_num(&$num);}print_r($num);
Salin selepas log masuk

引用 2 楼 xming4321 的回复:for( $i = 10000000 ; $i  你也来这里??你不是经常混水区的吗。。。。。

你是干php的?好奇而己。。。。。 我是派黄片的

2楼的最大只能是1049999,显然不符合要求。
4楼的可以。

4楼的慢不慢的?

PHP code?1234567891011121314function rand_num(&$num){    $n = rand(10000000,99999999);    if(in_array($n,$num))    {        rand_num(&$num);    }    return $n;}for($i=0;$i 瞬间就卡死了 ,不过可以解决要求,哈哈

引用 4 楼 zhangbin1988 的回复:PHP code?1234567891011121314function rand_num(&$num){    $n = rand(10000000,99999999);    if(in_array($n,$num))    {        rand_num(&$num);    }  ……
你要循环50W 能不慢嘛?

PHP code?1234567891011121314function rand_num(&$num){    $n = rand(10000000,99999999);    if(in_array($n,$num))    {        rand_num(&$num);    }    return $n;}for($i=0;$i
郁闷了。。我的PHP版本问题?Call-time pass-by-reference has been removed!!!

rand_num(&$num)
改作
rand_num($num);

php 5.3 起,不能显式的传递引用

况且你代码的写法本身就不经合理

2楼的最大只能是1049999,显然不符合要求。
4楼的可以。 你少写了一位吧

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan