O ile bowiem działa mi na dwóch elementach, tak nie mogę jej ustawić na więcej.
na dwóch śmiga:
function porównaj_punkty( $a_suma_punktów, $b_suma_punktów) // $c_suma_punktów, // $d_suma_punktów, // $e_suma_punktów, // $f_suma_punktów, // $g_suma_punktów, // $h_suma_punktów, // $i_suma_punktów, // $j_suma_punktów) { if ($a_suma_punktów[2] == $b_suma_punktów[2]) return 0; else if ($a_suma_punktów[2] < $b_suma_punktów[2]) return 1; else return -1; }
na czterech stoi

function porównaj_punkty( $a_suma_punktów, $b_suma_punktów, $c_suma_punktów, $d_suma_punktów) // $e_suma_punktów, // $f_suma_punktów, // $g_suma_punktów, // $h_suma_punktów, // $i_suma_punktów, // $j_suma_punktów) { if ($a_suma_punktów[2] == $b_suma_punktów[2]) { return 0; } else if ($a_suma_punktów[2] < $b_suma_punktów[2]) { return 1; } else { return -1; } if ($c_suma_punktów[2] == $d_suma_punktów[2]) { return 0; } else if ($c_suma_punktów[2] < $d_suma_punktów[2]) { return 1; } else { return -1; } if ($a_suma_punktów[2] == $c_suma_punktów[2]) { return 0; } else if ($a_suma_punktów[2] < $c_suma_punktów[2]) { return 1; } else { return -1; } if ($b_suma_punktów[2] == $d_suma_punktów[2]) { return 0; } else if ($b_suma_punktów[2] < $d_suma_punktów[2]) { return 1; } else { return -1; } }
i wyskakuje taki brzydal, że nic nie rozumiem:
Fatal error: Uncaught ArgumentCountError: Too few arguments to function porównaj_punkty(), 2 passed and exactly 4 expected in C...:379 Stack trace: #0 [internal function]: porównaj_punkty(Array, Array) #1 C..(442): usort(Array, 'por\xC3\xB3wnaj_punkt...') #2 C:...(147): include('C:\\xampp\\htdocs...') #3 {main} thrown in C:\xampp\... on line 379
ok znalazłem problem - dwie ogólne nazwy zmiennych:
function porównaj_punkty($x,$y) { if ($x[1] == $y[1]) return 0; else if ($x[1] < $y[1]) return 1; else return -1; }
ale się przy tym na-modliłem!