• 22-10-2012, 17:22:02
    #1
    Aşağıdaki diziyi ve alt dizilerini "order" değerine göre nasıl sıralayıp tekrar oluşturabilirim ? Uğraştım ama recursive multi sort gibi birşey yapamadım. Nettede bişey bulamadım.

    Array
    (
        [2] => Array
            (
                [nested_category_id] => 62
                [name] => Emlak
                [lft] => 28
                [rgt] => 45
                [order] => 2
                [depth] => 1
                [children] => Array
                    (
                        [0] => Array
                            (
                                [nested_category_id] => 105
                                [name] => Kiralık
                                [lft] => 29
                                [rgt] => 38
                                [order] => 6
                                [depth] => 2
                                [children] => Array
                                    (
                                        [0] => Array
                                            (
                                                [nested_category_id] => 107
                                                [name] => Dükkan
                                                [lft] => 30
                                                [rgt] => 35
                                                [order] => 8
                                                [depth] => 3
                                                [children] => Array
                                                    (
                                                        [0] => Array
                                                            (
                                                                [nested_category_id] => 114
                                                                [name] => Mağaza
                                                                [lft] => 31
                                                                [rgt] => 32
                                                                [order] => 14
                                                                [depth] => 4
                                                                [children] => Array
                                                                    (
                                                                    )
    
                                                            )
    
                                                        [1] => Array
                                                            (
                                                                [nested_category_id] => 113
                                                                [name] => Ofis
                                                                [lft] => 33
                                                                [rgt] => 34
                                                                [order] => 15
                                                                [depth] => 4
                                                                [children] => Array
                                                                    (
                                                                    )
    
                                                            )
    
                                                    )
    
                                            )
    
                                        [1] => Array
                                            (
                                                [nested_category_id] => 106
                                                [name] => Daire
                                                [lft] => 36
                                                [rgt] => 37
                                                [order] => 7
                                                [depth] => 3
                                                [children] => Array
                                                    (
                                                    )
    
                                            )
    
                                    )
    
                            )
    
                        [1] => Array
                            (
                                [nested_category_id] => 104
                                [name] => Satılık
                                [lft] => 39
                                [rgt] => 44
                                [order] => 5
                                [depth] => 2
                                [children] => Array
                                    (
                                        [0] => Array
                                            (
                                                [nested_category_id] => 109
                                                [name] => Arsa
                                                [lft] => 40
                                                [rgt] => 41
                                                [order] => 10
                                                [depth] => 3
                                                [children] => Array
                                                    (
                                                    )
    
                                            )
    
                                        [1] => Array
                                            (
                                                [nested_category_id] => 108
                                                [name] => Daire
                                                [lft] => 42
                                                [rgt] => 43
                                                [order] => 9
                                                [depth] => 3
                                                [children] => Array
                                                    (
                                                    )
    
                                            )
    
                                    )
    
                            )
    
                    )
    
            )
    
        [3] => Array
            (
                [nested_category_id] => 63
                [name] => Sağlık
                [lft] => 46
                [rgt] => 47
                [order] => 3
                [depth] => 1
                [children] => Array
                    (
                    )
    
            )
    
        [1] => Array
            (
                [nested_category_id] => 69
                [name] => Araba
                [lft] => 26
                [rgt] => 27
                [order] => 1
                [depth] => 1
                [children] => Array
                    (
                    )
    
            )
    
        [0] => Array
            (
                [nested_category_id] => 115
                [name] => Eğitim
                [lft] => 2
                [rgt] => 3
                [order] => 16
                [depth] => 1
                [children] => Array
                    (
                    )
    
            )
    
    )
  • 22-10-2012, 17:54:58
    #2
    function degis($a,$b) {
    if ($a['order'] == $b['order']) return 0;
    return ($a['order'] < $b['order'])? -1 : 1;
    }

    usort($dizi,'degis');
  • 22-10-2012, 18:47:28
    #3
    usort() expects exactly 2 parameters, 3 given

    diyor

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 18:47:28 -->-> Daha önceki mesaj 18:11:25 --

    http://pastebin.com/ug4YYri2 şeklinde çözebildim. ilgilenenlere teşekkürler