?php
成都創(chuàng)新互聯(lián)公司專注于安圖網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供安圖營銷型網(wǎng)站建設(shè),安圖網(wǎng)站制作、安圖網(wǎng)頁設(shè)計(jì)、安圖網(wǎng)站官網(wǎng)定制、小程序定制開發(fā)服務(wù),打造安圖網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供安圖網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
//排序
$arr1=array(1,2,3,4,5,8,9);
$min=$arr1[0];
$count=count($arr1);
for ($i=1; $i $count ; $i++) {
for ($j=0; $j $count-$i ; $j++) {
if ($arr1[$j]$arr1[$j+1]) {
$min=$arr1[$j+1];
$arr1[$j+1]=$arr1[$j];
$arr1[$j]=$min;
}
}
}
//各元素與6相減
for ($i=0; $i $count ; $i++) {
$arr2[]=abs($arr1[$i]-6);
}
//取$arr2最小值
$min_arr2=$arr2[0];
for ($i=0; $i $count ; $i++) {
if ($min_arr2$arr2[$i]) {
$min_arr2=$arr2[$i];
}
}
for ($i=0; $i $count; $i++) {
if ($arr2[$i]==$min_arr2) {
echo $arr1[$i];
}
}
?
例如你的數(shù)字字段有a、b、c、d,需要查詢時顯示那么之和,并按綜合排序,SQL語句可以這樣寫:
SELECT a+b+c+d, a, b, c, d FROM 表名 ORDER BY 1
上面的例子典型的應(yīng)用是學(xué)生成績計(jì)算總分,其實(shí)可以加總和,也可以部分字段減,例如a+b+c-d,例如用來計(jì)算工資等。
對于你補(bǔ)充的例子,我修改你的SQL語句為:
$result = mysql_query("SELECT info1+info2,* FROM stats ORDER BY 1,data2 DESC LIMIT 20");
1、在test.php文件內(nèi),使用header設(shè)置test.php執(zhí)行的編碼為utf8,避免輸出中文的時候出現(xiàn)亂碼。
2、在test.php文件內(nèi),創(chuàng)建一個測試的數(shù)組,例如,定義一個分類的數(shù)組,其對應(yīng)的索引值分別為0,4,8。
3、在test.php文件內(nèi),使用array_values()方法將上一步的數(shù)據(jù)重新排序,并且從0開始,把重新排序的數(shù)組保存在$result變量中。
4、在test.php文件內(nèi),使用foreach方法遍歷數(shù)組,其中$k為索引值,$v為索引值對應(yīng)的數(shù)組值。
5、在test.php文件內(nèi),使用echo方法輸出數(shù)組中的索引值和對應(yīng)的數(shù)組值即可。