PHP - Сортировка масивов
Войти

PHP - Сортировка масивов

PHP - Сортировка масивов

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?php 

function build_sorter($key) {
    return function (
$a$b) use ($key){
        return 
strnatcmp($a[$key], $b[$key]);
    };
}
usort($arOffer['sizes'], build_sorter('SIZE'));

function 
compare ($v1$v2) {
/* Сравниваем значение по ключу date_reg */
    
if ($v1["SIZE"] == $v2["SIZE"]) return 0;
    
$zn_1 preg_replace('/[^0-9]/'''$v1["SIZE"]);
    
$zn_2 preg_replace('/[^0-9]/'''$v2["SIZE"]);
    if(
$zn_1 $zn_2){
        return -
1;
    }
    else{ 
        return 
1;
    }
}

usort($arOffer['sizes'], "compare");

//////////////////////////////////////////////////////////////////

function rt($c){

  foreach(
$c as $key=>$mas_2){
   
$size preg_replace('/[^0-9]/'''$mas_2['SIZE']);
   
$size_2 preg_replace('/[^A-z]/'''$mas_2['SIZE']);
   
$b[$size][$size_2]=array(ID=>$mas_2['ID'], SIZE=>$mas_2['SIZE'], 
                
NUM=>$size,LET=>$size_2);
  }

  
ksort($b);

  foreach(
$b as $key=>$val){
    
ksort($b[$key]);
  }

  foreach(
$b as $key => $val){
     foreach(
$val  as  $inner_key => $inner_val){
     
$mas[] = array(ID=>$inner_val['ID'], SIZE=>$inner_val['SIZE']);
     }
  }
  return(
$mas);    
}

?>
Теги:
php