|
|
|
|
N a s z e z
a s o b y : |
| |
@ @ @ @ @ @ @ @ @
@ @ @
|
|
|
|
Informacje o użytkowniku:
|
| |
C o
w s e r w i s i e :
@ @ @ @ @
|
|
 |
|
|
| |
| Sonda
Korzystasz z CMSów?
|
Najczęsciej oglądane:
 5 ghz Project: CPU Cooling With Liquid Nitrogen
 zarabista strzelanka
|
|
|
|
|
|
|
sizeof, sort, uasort, uksort, usort
Ocena: 0.0/5 (0 ocen) Zaloguj się, aby móc głosować
Opublikował: edious, Dn: 07.11.2005, Wyświetleń: 35 |
(PHP 3, PHP 4 >= 4.0.0) sizeof -- Policz ilość elementów w zmiennej Opisint sizeof (mixed zmienna)
(PHP 3, PHP 4 >= 4.0.0) sort -- Sortuj tablicę Opisvoid sort (array tablica [, int flagi])
Funkcja ta sortuje tablicę. Po zakończeniu działania funkcji elementy będą ułożone od najmniejszego do najwiekszego. Przykład 1. Przykład użycia sort() <?php
$owoce = array ("cytryna", "pomarańca", "banan", "jabłko");
sort ($owoce);
reset ($owoce);
while (list ($key, $val) = each ($owoce)) {
echo "owoce[".$key."] = ".$val."\n";
}
?> |
|
Ten przykład wyświetli: Owoce zostały posortowane w porządku alfabetycznym. Opcjonalny drugi parametr flagi może być użyty do zmiany zachowania sortowania przy pomocy tych wartości: Flagi typu sortowania: SORT_REGULAR - porównuj elementy normalnie SORT_NUMERIC - porównuj elementy jako liczby SORT_STRING - porównuj elementy jako stringi
(PHP 3>= 3.0.4, PHP 4 >= 4.0.0) uasort -- Sortuj tablicę korzystając ze zdefiniowanej przez użytkownika funkcji porównującej i zachowując skojarzenia kluczy Opisvoid uasort (array tablica, function funkcja_por)
Funkcja ta sortuje tablicę w taki sposób, że klucze zachowują przypisanie do odpowiednich wartości. Jest to używane głównie przy sortowaniu tablic asocjacyjnych, gdzie znacząca jest kolejność elementów. Funkcja porównująca jest zdefiniowana przez użytkowanika. (PHP 3>= 3.0.4, PHP 4 >= 4.0.0) uksort -- Sortuj tablicę według kluczy korzystając ze zdefiniowanej przez użytkownika funcji porównującej Opisvoid uksort (array tablica, function funkcja_por)
Funkcja ta posortuje tablicę wedłu kluczy korzystając z podanej przez użytkownika funkcji porównującej. Jeśli chcesz posortować tablicę według skomplikowanych kryteriów, to powinieneś użyć tej funkcji. Przykład 1. Przykład użycia uksort() function cmp ($a, $b) {
if ($a == $b) return 0;
return ($a > $b) ? -1 : 1;
}
$a = array (4 => "cztery", 3 => "trzy", 20 => "dwadzieścia", 10 => "dziesięć");
uksort ($a, "cmp");
while (list ($key, $value) = each ($a)) {
echo "$key: $value\n";
} |
|
Ten przykład wyświetli: (PHP 3>= 3.0.3, PHP 4 >= 4.0.0) usort -- Sortuj tablicę według wartości korzystając ze zdefiniowanej przez użytkownika funkcji porównującej Opisvoid usort (array tablica, string funkcja_por)
Funkcja ta posortuje tablicę według jej wartości korzystając z podanej przez użytkownika funkcji porównującej. Jeśli chcesz posortować tablicę według skomplikowanych kryteriów, to powinieneś użyć tej funkcji. Funkcja porównująca musi zwracać liczbę całkowitą mniejszą, równą lub większą od zera jeśli pierwszy argument jest odpowiednio mniejszy, równy lub większy niż drugi. Jeśli dwa elementy tablicy są równe, to ich kolejność występowania w posortowanej tablicy pozostaje niezdefiniowany. Istenieje także możliwość użycia funkcji składowej obiektu jako funkcji porównującej. Zobacz przykład nr 3 poniżej. Przykład 1. Przykład użycia usort() function cmp ($a, $b) {
if ($a == $b) return 0;
return ($a > $b) ? -1 : 1;
}
$a = array (3, 2, 5, 6, 1);
usort ($a, "cmp");
while (list ($key, $value) = each ($a)) {
echo "$key: $value\n";
} |
|
Powyższy przykład wyświetli: Notatka: Oczywiście w prostszych przypadkach lepiej jest skorzystać z funkcji rsort()
Przykład 2. Przykład użycia usort() do sortowania wielowymiarowych tablic function cmp ($a, $b) {
return strcmp($a["owoc"], $b["owoc"]);
}
$owocs[0]["owoc"] = "cytryny";
$owocs[1]["owoc"] = "jabłka";
$owocs[2]["owoc"] = "winogrona";
usort($owocs, "cmp");
while (list ($key, $value) = each ($owocs)) {
echo "\$owocs[$key]: " . $value["owoc"] . "\n";
} |
|
Sortując tablicę wielowymiarową, $a i $b zawierają referencję do pierwszego indeksu tablicy. Ten przykład wyświetli: Przykład 3. Przykład użycia usort() używając funkcji składowej obiektu class TestObj {
var $name;
function TestObj($name)
{
$this->name = $name;
}
/* Statyczna funkcja porównująca */
function cmp_obj($a, $b)
{
$al = strtolower($a->name);
$bl = strtolower($b->name);
if ($al == $bl) return 0;
return ($al > $bl) ? +1 : -1;
}
}
$a[] = new TestObj("c");
$a[] = new TestObj("b");
$a[] = new TestObj("d");
uasort($a, array ("TestObj", "cmp_obj"));
foreach ($a as $item) {
print $item->name."\n";
} |
|
Ten przykład wyświetli:
|
|
|