$a=array(1,2,5,6,7,9,111,22,33,55)
成都創(chuàng)新互聯(lián)于2013年創(chuàng)立,是專業(yè)互聯(lián)網(wǎng)技術服務公司,擁有項目網(wǎng)站設計制作、成都網(wǎng)站制作網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元惠濟做網(wǎng)站,已為上家服務,為惠濟各地企業(yè)和個人服務,聯(lián)系電話:18980820575
$b=$a[rand(0,count($a)-1)];//這樣b就得到一個隨機值
插入b;
在php中要隨機取mysql記錄我們可以直接使用mysql_query來執(zhí)行mysql中的select rand函數(shù)獲取的數(shù)據(jù)并讀出來,這里就來給大家簡單介紹一下.
方法一,代碼如下:
復制代碼代碼如下:
select * from tablename order by rand() limit 1
把 limit 后面的數(shù)值改為你想隨機抽取的條數(shù),這里只取一條.
方法二,代碼如下:
復制代碼代碼如下:
$query= "SELECT count(*) as count FROM recommends";
....
$max_num = $row['count']; // 取記錄總數(shù)
srand((double)microtime()*1000000); // 隨機數(shù)種子
$se_pos = rand(0, $max_num); // 隨機數(shù)范圍
$length = 6; // 記錄條數(shù)
if (($max_num - $se_pos) = $length) {
$se_pos = $max_num - $se_pos; // 記錄數(shù)不足6條的情況
}
$query = "SELECT * FROM recommendsn limit ".$se_pos.",".$length;
例3,假設有一個名為xyj的數(shù)據(jù)庫,庫中有表obj,表中有一字段為name,現(xiàn)在要實現(xiàn)從表里隨機選取一條記錄,具體程序如下:
復制代碼代碼如下:
?php
$db = mysql_connect("localhost", "root");
mysql_select_db("xyj",$db);
$result=mysql_query("SELECT * FROM obj",$db);
$max_num=mysql_num_rows($result);//取得數(shù)據(jù)庫的記錄數(shù)
srand((double)microtime()*10000000); //生成隨機數(shù)種子。
$se_pos=rand(0, $max_num-1); //從0到最大記錄數(shù)取隨機數(shù)
$length=30; //設定共取多少條記錄
//下面是取出指定數(shù)目的記錄。
$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字段
?
因為語言不同,代碼就不貼了,思路如下:
定義數(shù)組,因為10個是確定的,所以用第一個for循環(huán)循環(huán)十次,每次都random出數(shù)字賦值給數(shù)組,之后冒泡排序,因為冒泡法的循環(huán)次數(shù)不定,用while內(nèi)嵌for循環(huán):
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循環(huán)
$ad = array(1,2,3,4,5,6,7);
$times = 3;
$str = "發(fā)發(fā),發(fā)發(fā)發(fā),發(fā)付付付,付付付付,付付付付,付付付付,付,";
$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);