У меня проблемы с array_multisort в php - PullRequest
0 голосов
/ 24 февраля 2020

Я пытаюсь заказать массив для нескольких значений (сначала точки, затем golaverage, затем dif и, наконец, GF, у меня есть этот код:

foreach ($clasificaciones as $clave => $fila) {
                $puntos[$clave] = $fila['puntos'];
                $golaverage[$clave] = $fila['golaverage'];
                $dif[$clave] = $fila['dif'];
                $gf[$clave] = $fila['gf'];
            }


            array_multisort($puntos, SORT_DESC, $golaverage, SORT_DESC, $dif, SORT_DESC, $gf, SORT_DESC, $clasificaciones);

Массив перед заказом с array_multisort это:

array(2) {
  ["Sevilla"]=>
  array(16) {
    ["jugados"]=>
    int(38)
    ["ganados"]=>
    int(17)
    ["empatados"]=>
    int(8)
    ["perdidos"]=>
    int(13)
    ["gf"]=>
    int(62)
    ["gc"]=>
    int(47)
    ["dif"]=>
    int(15)
    ["pinchazos"]=>
    int(21)
    ["puntos"]=>
    int(59)
    ["imagen"]=>
    string(15) "Sevilla, Espana"
    ["racha1"]=>
    string(103) "racha"
    ["racha2"]=>
    string(116) "racha"
    ["racha3"]=>
    string(101) "racha"
    ["racha4"]=>
    string(100) "racha"
    ["racha5"]=>
    string(99) "racha"
    ["golaverage"]=>
    int(-5)
  }
  ["Getafe"]=>
  array(16) {
    ["jugados"]=>
    int(38)
    ["ganados"]=>
    int(15)
    ["empatados"]=>
    int(14)
    ["perdidos"]=>
    int(9)
    ["gf"]=>
    int(48)
    ["gc"]=>
    int(35)
    ["dif"]=>
    int(13)
    ["pinchazos"]=>
    int(23)
    ["puntos"]=>
    int(59)
    ["imagen"]=>
    string(14) "Getafe, Espana"
    ["racha1"]=>
    string(107) "racha"
    ["racha2"]=>
    string(102) "racha"
    ["racha3"]=>
    string(100) "racha"
    ["racha4"]=>
    string(106) "racha"
    ["racha5"]=>
    string(108) "racha"
    ["golaverage"]=>
    int(6005)
  }

с var_export:

'Sevilla' => 
  array (
    'jugados' => 38,
    'ganados' => 17,
    'empatados' => 8,
    'perdidos' => 13,
    'gf' => 62,
    'gc' => 47,
    'dif' => 15,
    'pinchazos' => 21,
    'puntos' => 59,
    'imagen' => 'Sevilla, Espana',
    'racha1' => 'racha',
    'racha2' => 'racha',
    'racha3' => 'racha',
    'racha4' => 'racha',
    'racha5' => 'racha',
    'golaverage' => -5,
  ),
  'Getafe' => 
  array (
    'jugados' => 38,
    'ganados' => 15,
    'empatados' => 14,
    'perdidos' => 9,
    'gf' => 48,
    'gc' => 35,
    'dif' => 13,
    'pinchazos' => 23,
    'puntos' => 59,
    'imagen' => 'Getafe, Espana',
    'racha1' => 'racha',
    'racha2' => 'racha',
    'racha3' => 'racha',
    'racha4' => 'racha',
    'racha5' => 'racha',
    'golaverage' => 6005,
  )

Проблема в том, что после array_multisort порядок массивов такой же ... почему? У Севильи -5, а у Getafe 6005 ... Вероятно, очень глупая вещь, но я ее не вижу

...