Questa è una domanda davvero esoterica, ma sono sinceramente curioso. Sto usando usort per la prima volta oggi da anni, e sono particolarmente interessato a cosa sta succedendo esattamente. Supponiamo che io ho il seguente array:Parametri funzione callback USORT di PHP
$myArray = array(1, 9, 18, 12, 56);
ho potuto risolvere la questione con usort:
usort($myArray, function($a, $b){
if ($a == $b) return 0;
return ($a < $b) ? -1 : 1;
});
io non sono al 100% chiaro su quello che sta succedendo con i due parametri $ A e $ b. Cosa sono e cosa rappresentano. Voglio dire, posso supporre che $ a rappresenti l'articolo corrente nell'array, ma a cosa si sta paragonando esattamente? Cos'è $ b?
ho potuto aumentare il mio gamma per includere stringhe:
$myArray = array(
array("Apples", 10),
array("Oranges", 12),
array("Strawberries", 3)
);
ed eseguire il seguente:
usort($myArray, function($a, $b){
return strcmp($a[0], $b[0]);
});
e che sarebbe ordinare il mio bambino-array in ordine alfabetico basati sul [0] valore di indice. Ma questo non offre alcuna chiarezza su cosa siano $ a e $ b. So solo che combaciano con lo schema che sto cercando.
Qualcuno può offrire una certa chiarezza su ciò che sta effettivamente avvenendo?
+1 Ho sempre pensato la stessa cosa. – alex