比如我要从1到100这100个数中,随机取数,每次取一个,插入到一条记录中,并且取出来后,保证下次不会再取到,这个代码如何实现?感谢!
最好还能算出已经取了几个,剩余几个。
非常感谢您的回答,我试了一下,最后的array_slice是不是应该写成array_splice啊?还有,我这里正好是从1到100来举例,如果是50到100的话,$n=rand(0,count($arr)-1);这句代码是不是就不太合适了啊?感谢!
追答我的代码是运行成功了粘贴上来的,麻烦你粘贴了执行以下,你就知道应该是_slice
另外,希望理解rand函数的参数,这个是产生的随机数范围,作为数字的下标,不能任何修改,数值是500..100能正确运行,数据是字符串、图片、对象都能正确运行。
感谢您的回答,实际测试不成功啊,因为每次程序执行的时候,数组a都会重新从1到100内选数,unset实际上没有生效啊。
追答我刚开始以为你这个页面不刷新,如果刷新的话,需要加一个删除功能
$array1= range(1,100);
$array2= array(2,3,5,90);//这个数组的元素,需要从你插入的记录中查取出来
$a= array_diff($array1, $array2);//删除已经被插入记录中的元素
php 如何实现,从数组中随机取出数据,还要保证下次不会再取到
range(1,100);function get_one(&$a){ if(count($a)>=1){ key=array_rand($a,1);value=$a[$key];unset($a[$key]);return value;}else{ return "都取光了";} } \/\/每次取值可以直接 echo "取到的值:".get_one($a);echo "还剩:".count($a);
php中怎样从一个数组中随机取一个元素出来呢?
它的用法也很简单:array_rand($arr[, $num])$arr == 用来取元素的数组$num == 随机取下标的个数其中第二个参数 $num 是可选的,默认为1 。注意:它的返回值在第二个参数大于 1 的时候是一个数组;当第二个参数不设或者传值 1 的时候是一个下标。简单的示例代码如下:1、第二个参数不...
PHP中怎么从一个二维数组中随机取出一个值?
回答:用array_rand()函数就可以实现。 array_rand():从数组中随机选出一个或多个元素,并返回。 语法:array_rand(array,number) array:必需。规定输入的数组参数。 number:可选。默认是 1。规定返回多少个随机的元素。 例子:$a = ['a','b','c'];\/\/定义一个二维数组 $b = $array_rand($...
php中如何在数组中随机抽取n个数据的值
它接受 input 作为输入数组和一个可选的参数 num_req,指明了你想取出多少个单元 - 如果没有指定,默认为 1。 如果你只取出一个,array_rand() 返回一个随机单元的键名,否则就返回一个包含随机键名的数组。这样你就可以随机从数组中取出键名和值。主要是用array_rand()方法 ...
php中如何在数组中随机抽取n个数据的值
它接受 input 作为输入数组和一个可选的参数 num_req,指明了你想取出多少个单元 - 如果没有指定,默认为 1。如果你只取出一个,array_rand()返回一个随机单元的键名,否则就返回一个包含随机键名的数组。这样你就可以随机从数组中取出键名和值。主要是用array_rand()方法 ...
php随机生成数据库中不存在的且不重复数字,在线等!!!
1. 将生成的数字保存到mysql数据库,然后每次生成的号码不能与数据库的数字重复,请问怎么弄?先读取数据库已存在的数字,将结果以数组格式,与rand(1,1000)的数组相比较计算差集,去除这部分数字(array_diff),再shuffle,得到新的随机数。我觉得,你完全可以建立一个序号表,比如,1-1000,每次用时...
[1","2"]"怎么取出数字php?
1、首先新建一个php文件,命名为test.php,用于讲解php如何随机生成1到3的数字。2、在test.php文件中,使用header()方法将页面的编码格式设置为utf-8。3、在test.php文件中,将1至3的数字保存在数组中。4、在test.php文件中,使用shuffle函数打乱数组元素的排序。5、在test.php文件中,使用foreach...
请教一下前辈php如何从一个数组中随机取五个数据(下标和值都要)
给你写个函数:function haha($arr){ $keys=array_rand($arr,5); $re=array(); foreach($keys as $v){ $re[$v]=$arr[$v]; } return $re; }
php从数组中随机取几个元素组成新的数组
1、a = array(1,2,3,4,5,6,7,8,9,10);b = array_rand($a,5);foreach($b as $k=>$v){ arr[]=$a[$v];} print_r($arr);2、arr=$a;shuffle($arr);arr=array_slice($arr,0,5);print_r($arr);
php,如何取出数组中的值,
定义数组: $arr=array(0=>12,1=>23455);定义关联数组时用的是 => 符号,符号左边的键值不加 [ ]要把数组赋值给一个变量才能访问,如:$arr 这时通过键值就可以访问数组中的值了,$arr[0] 就是 12 ,$arr[1] 就是 23455 不指定数组的键值,默认就是0,1,2,3,4,5,……从零...