最近公司做货架管理,要求按照订单号最后一位生成0-9十个货架,再按倒数据第二位把每个货架上的从0-9排序,突想一个小办法,供大家学习
注意如果后两们相同,可以用加一个字母来处理,但是如果有无数个重复的数据,字母个数有限,所以我选择用最后两位倒过来同时给key加上字母a,如果有重复的直接加上该订单号这样就不会出现重复的key将其覆盖,
<?php
$aar1=array
(
31102,31103,40003,56123,31189,41189,51103,56153,333221213
);
$arr=array();
foreach($aar1 as $key=>$value)
{
$d1=substr($value,-1,1);
$d2=substr($value,-2,1);
$dk=$d1.$d2.'a'.$value;
$arr[$dk]=$value;
}
ksort($arr);
foreach($arr as $k=>$v)
{
echo $k.'------'.$v;
echo '<br>';
}
?>