2015-04-25 2 views
0

Ниже мой массив, я хочу сортировать его на основе [attributes] -> [0] -> [value] как я могу это сделать, пожалуйста, наведите меня на руководство. Я попытался использовать сортировку, но как заставить ее работать для значения дочернего массива. Pls направляет меня на новый для меня.как отсортировать массив на основе значения os дочерний массив

[549246] => Array 
     (
      [info] => Array 
       (
        [price] => $281.00 
        [qty] => 10 
        [prod_id] => 549246 
       ) 

      [attributes] => Array 
       (
        [0] => Array 
         (
          [code] => sizes 
          [label] => Size 
          [value] => 25mg 
          [attribute_id] => 191 
          [option_id] => 26 
         ) 

       ) 

     ) 

    [549245] => Array 
     (
      [info] => Array 
       (
        [price] => $75.00 
        [qty] => 10 
        [prod_id] => 549245 
       ) 

      [attributes] => Array 
       (
        [0] => Array 
         (
          [code] => sizes 
          [label] => Size 
          [value] => 5mg 
          [attribute_id] => 191 
          [option_id] => 24 
         ) 

       ) 

     ) 

ответ

1

попробуйте ниже;

function customer_sort ($a, $b) { 

if ((int)$a['attributes'][0]['value'] == (int)$b['attributes'][0]['value']) { 
    return 0; 
} 

return (int)$a['attributes'][0]['value'] > (int)$b['attributes'][0]['value'] ? 1 : -1; 

} 
uasort($arr, 'customer_sort');