$a=array(1,2,5,6,7,9,111,22,33,55)
成都创新互联于2013年创立,是专业互联网技术服务公司,拥有项目网站设计制作、成都网站制作网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元惠济做网站,已为上家服务,为惠济各地企业和个人服务,联系电话:18980820575
$b=$a[rand(0,count($a)-1)];//这样b就得到一个随机值
插入b;
在php中要随机取mysql记录我们可以直接使用mysql_query来执行mysql中的select rand函数获取的数据并读出来,这里就来给大家简单介绍一下.
方法一,代码如下:
复制代码代码如下:
select * from tablename order by rand() limit 1
把 limit 后面的数值改为你想随机抽取的条数,这里只取一条.
方法二,代码如下:
复制代码代码如下:
$query= "SELECT count(*) as count FROM recommends";
....
$max_num = $row['count']; // 取记录总数
srand((double)microtime()*1000000); // 随机数种子
$se_pos = rand(0, $max_num); // 随机数范围
$length = 6; // 记录条数
if (($max_num - $se_pos) = $length) {
$se_pos = $max_num - $se_pos; // 记录数不足6条的情况
}
$query = "SELECT * FROM recommendsn limit ".$se_pos.",".$length;
例3,假设有一个名为xyj的数据库,库中有表obj,表中有一字段为name,现在要实现从表里随机选取一条记录,具体程序如下:
复制代码代码如下:
?php
$db = mysql_connect("localhost", "root");
mysql_select_db("xyj",$db);
$result=mysql_query("SELECT * FROM obj",$db);
$max_num=mysql_num_rows($result);//取得数据库的记录数
srand((double)microtime()*10000000); //生成随机数种子。
$se_pos=rand(0, $max_num-1); //从0到最大记录数取随机数
$length=30; //设定共取多少条记录
//下面是取出指定数目的记录。
$result_lim=mysql_query("select * from obj limit $se_pos,$length",$db);
$myrow_lim=mysql_fetch_array($result_lim);
printf("%sn", $se_pos);//显示随机得到的记录号
printf("%sn", $myrow_lim["name"]);//显示随机得到的记录的name字段
?
因为语言不同,代码就不贴了,思路如下:
定义数组,因为10个是确定的,所以用第一个for循环循环十次,每次都random出数字赋值给数组,之后冒泡排序,因为冒泡法的循环次数不定,用while内嵌for循环:
while(flag){
flag=false;
for(i=0;i10;i++)
{if(a[i]a[i+1]){a[i]=a[i]+a[i+1];a[i+1]=a[i]-a[i+1];a[i]=a[i]-a[i+1];flag=true;}}
}
意思就是每次都用冒泡法给a0~a9两两排序,如果确实有不符合要求的就变动位置,如果都没有那么flag保持初值false则推出while循环
$ad = array(1,2,3,4,5,6,7);
$times = 3;
$str = "发发,发发发,发付付付,付付付付,付付付付,付付付付,付,";
$arr = explode(",",$str);
for ($i = 0; $i $times; $i++) {
$k = rand(0,count($arr)-1);
$arr[$k] = $ad[rand(0,count($ad)-1)].$arr[$k];
}
return implode(",",$arr);