>  기사  >  백엔드 개발  >  请教一下,用PHP如何生成50万个不重复的8位阿拉伯数字?

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

WBOY
WBOY원래의
2016-06-23 14:02:281103검색

请教一下,用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);

引用 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楼的可以。 你少写了一位吧

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.