|
分享下php生成随机数的三种方法,生成1-10之间的不重复随机数,php生成不重复随机数的例子,需要的朋友参考下。
如何用php生成1-10之间的不重复随机数?
例1,使用shuffle函数生成随机数。
<?php$arr=range(1,10);shuffle($arr);foreach($arr as $values){ echo $values." ";}?>
例2,使用array_unique函数生成随机数。
<?php$arr=array();while(count($arr)<10){ $arr[]=rand(1,10); $arr=array_unique($arr);}echo implode(" ",$arr);?>
例3,使用array_flip函数生成随机数,可以去掉重复值。
<?php$arr=array();$count1=0;$count = 0;$return = array();while ($count < 10) { $return[] = mt_rand(1, 10); $return = array_flip(array_flip($return)); $count = count($return); } //www.jbxue.comforeach($return as $value) { echo $value." "; }echo "<br/>";$arr=array_values($return);// 获得数组的值 foreach($arr as $key)echo $key." ";?>
本人是ASP程序员,这是首次写php程序,一点心得发上来共享
<?php $ip2id= round(rand(600000, 2550000) / 10000); //第一种方法,直接生成 $ip3id= round(rand(600000, 2550000) / 10000); $ip4id= round(rand(600000, 2550000) / 10000); //下面是第二种方法,在以下数据中随机抽取 $arr_1 = array("218","218","66","66","218","218","60","60","202","204","66","66","66","59","61","60","222","221","66","59","60","60","66","218","218","62","63","64","66","66","122","211"); $randarr= mt_rand(0,count($arr_1)-1); $ip1id = $arr_1[$randarr]; echo $ip1id; echo "."; echo $ip2id; echo "."; echo $ip3id; echo "."; echo $ip4id; ?>
例输出结果为 218.28.131.182
这个程序的特点是,生成的ip第一个字段时在指定范围内的,设定的几个是国内常见号段,也就是说生成的ip地址大部分是国内的
核心代码:
<?php $arr_1 = array("http://66.249.89.99","http://66.249.89.104","http://74.125.71.105"); $randarr= mt_rand(0,count($arr_1)-1); $gip= $arr_1[$randarr]; echo $gip."$randarr"; ?>
php技术:php产生随机数的两种方法实例代码 输出随机IP,转载需保留来源!
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。