專注于為中小企業(yè)提供
成都做網(wǎng)站、成都網(wǎng)站制作服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)
平泉免費做網(wǎng)站提供優(yōu)質(zhì)的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設實現(xiàn)規(guī)模擴充和轉變。
>一、大小排列(冒泡排序)
主要運用于數(shù)組數(shù)字大小排序
functionmaopaoSort(&$arr){
//必須是&$arr,傳一個地址,如果是$arr,根據(jù)函數(shù)調(diào)用機制,排序將無法生效$temp=0;
//中間變量$flag=false;
//外層循環(huán)控制循環(huán)次數(shù)for($i=0;$i
//內(nèi)層循環(huán)控制每一次循環(huán)的交換for($j=0;$j
//若前面的數(shù)比后面的數(shù)大,則交換if($arr[$j]>$arr[$j+1]){
$temp=$arr[$j];
$arr[$j]=$arr[$j+1];
$arr[$j+1]=$temp;
$flag=true;
}
}
if(!$flag){
//已經(jīng)是有序break;
}
$flag=false;
}
return$arr;
}
二、構建產(chǎn)品參數(shù)(遞歸)
主要運用于商品的多個參數(shù)之間的所有組合
/*構建商品參數(shù)集*/functionbrush($res=[],$arr=[])
{
if(empty($res))$res=(array)array_shift($arr);
if(empty($arr))return$res;
$current=array_shift($arr);
#接下來要參與計算的一組屬性$last=[];
foreach($resas$row=>$row_val){
#循環(huán)上一次已經(jīng)算出的集合foreach($currentas$col=>$col_val){
$last[]=$row_val.'_'.$col_val;
}
}
returnbrush($last,$arr);
#遞歸處理,直到$arr滾到最后一組屬性}
示例:color:
Red,black
AvailableMetals:
YellowGold,WhiteGold,RoseGold,Platinum
AvailabletofittheseCenterStoneShapes:
圖形1,圖形2,圖形3,圖形4
如圖:循環(huán)出所有的產(chǎn)品參數(shù)組合
三,樹狀排列
主要應用于分類排列先找出一級分類再找一級分類下的二級類以此類推
/***無限分類-權限*@paramarray$cate欄目*@paramstring$lefthtml分隔符*@paramint$pid父ID*@paramint$level層級*@returnarray*/publicstaticfunctioncateTree($cate,$name='title',$lefthtml='|—',$pid=0,$level=0){
$arr=array();
foreach($cateas$v){
if($v['pid']==$pid){
$v['level']=$level+1;
$v['lefthtml']=str_repeat($lefthtml,$level);
$v['l'.$name]=$v['lefthtml'].lang($v[$name]);
$arr[]=$v;
$arr=array_merge($arr,self::cateTree($cate,$name,$lefthtml,$v['id'],$level+1));
}
}
return$arr;
}
文章題目:PHP開發(fā)中常用的數(shù)據(jù)排列方法
鏈接URL:
http://weahome.cn/article/ecsjip.html