|
użytkowników online: 16
|
OPINIE UŻYTKOWNIKÓW
|
Przyznam, że jestem pod sporym wrażeniem. Od wielu lat zajmuje się grafiką przeznaczoną do druku ze szczególnym uwzględnieniem opakowań. Z radością stwierdzam, iż twórca serwisu jest moim ulubionym typem potencjalnego współpracownika (choć branża troszeczkę inna) tzn. pada pytanie i błyskawicznie pada konkretna odpowiedź bez względu na stopień skomplikowania pytania. Gorąco polecam współpracę, gdyż macie pewność że nie zostaniecie potraktowani sloganami typu "oczywiście", "nie ma sprawy" tylko otrzymacie konkretną pomoc. Tak trzymać! Na pewno jeszcze nie raz skorzystam
Paweł
Studio Gama
|
|
PODRĘCZNIK PHP 5.x, 4.x, 3.x - częściowo spolszczony / źródło: www.php.net
[Spis]
[A]
[B]
[C]
[D]
[E]
[F]
[G]
[H]
[I]
[J]
[K]
[L]
[M]
[N]
[O]
[P]
[Q]
[R]
[S]
[T]
[U]
[V]
[X]
[W]
[Z]
arsort (PHP 3, PHP 4, PHP 5) arsort --
Sortuje tablicę w porządku odwrotnym z zachowaniem skojarzenia kluczy
Opisbool arsort ( array &tablica [, int flagi] )
Ta funkcja sortuje tablicę w taki sposób, że klucze zachowują przypisanie
do odpowiednich wartości. Ten sposób sortowania jest używany głównie przy
sortowaniu tablic asocjacyjnych, gdzie znacząca jest kolejność
występowania elementów w tablicy.
Zwraca TRUE w przypadku sukcesu, FALSE w
przypadku porażki.
Przykład 1. Przykład użycia arsort() |
<?php
$owoce = array("d" => "cytryna, "a" => "pomarańcza", "b" => "banan", "c" => "jabłko");
arsort($owoce);
reset($owoce);
while (list($key, $val) = each($owoce)) {
echo "$key = $valn";
}
?>
|
Powyższy przykład wyświetli: a = pomarańcza
c = jabłko
d = cytryna
b = banan |
|
Owoce zostały posortowane w odwrotnym porządku alfabetycznym a
skojarzenia kluczy dla każdego elementu zostały zachowane.
Możesz zmodyfikować zachowanie sortowania przez użycie opcjonalnego
parametru flagi. Aby uzyskać szczegóły zobacz
sort().
Patrz także: asort(), rsort(),
ksort() i sort().
User Contributed NotesScott Woods
02-Feb-2005 05:21
Note about "morgan at anomalyinc dot com"'s comment:
As of PHP4, you can just use array_multisort() to sort parallel or multi-dimensional arrays.
rodders_plonker at yahoo dot com
22-Aug-2000 03:43
I was having trouble with the arsort() function on an older version of PHP which was returning an error along the lines of 'wrong perameter count for function arsort' when I tried to use a flag for numeric sorting (2/SORT_NUMERIC).
I figured, as I only wanted to sort integers, I could pad numbers from the left to a specific length with 0's (using the lpad function provided by improv@magma.ca in the notes at http://www.php.net/manual/ref.strings.php).
A string sort then correctly sorts numerically (i.e. {30,2,10,21} becomes {030,021,010,002} not {30,21,2,10}) when echoing the number an (int)$string_name hides the leading 0's.
Made my day :).
Rodders.
morgan at anomalyinc dot com
25-Nov-1999 04:30
If you need to sort a multi-demension array, for example, an array such as
$TeamInfo[$TeamID]["WinRecord"]
$TeamInfo[$TeamID]["LossRecord"]
$TeamInfo[$TeamID]["TieRecord"]
$TeamInfo[$TeamID]["GoalDiff"]
$TeamInfo[$TeamID]["TeamPoints"]
and you have say, 100 teams here, and want to sort by "TeamPoints":
first, create your multi-dimensional array. Now, create another, single dimension array populated with the scores from the first array, and with indexes of corresponding team_id... ie
$foo[25] = 14
$foo[47] = 42
or whatever.
Now, asort or arsort the second array.
Since the array is now sorted by score or wins/losses or whatever you put in it, the indices are all hoopajooped.
If you just walk through the array, grabbing the index of each entry, (look at the asort example. that for loop does just that) then the index you get will point right back to one of the values of the multi-dimensional array.
Not sure if that's clear, but mail me if it isn't...
-mo
|