18
2013
PHP – Zamiana kolejności elementów tablicy wg. kluczy
Z cyklu „małe, a cieszy”, opiszę prostą funkcję, która jest przydatna przy sortowaniu elementów tablicy asocjacyjnej według kluczy.
Przydatne, gdy iterujemy po tablicy z użyciem pętli foreach
.
Przykład tablicy
Jako klucze są w tym przykładzie użyte przedziały liczb (string).
Przed wykonaniem sortowania, elementy 10-14, 5-9 oraz 25-29, 20-24 są w odwrotnej kolejności.
Array
(
[0-4] => 1
[10-14] => 1
[5-9] => 0
[15-19] => 1
[25-29] => 4
[20-24] => 0
[30-34] => 7
)
Po użyciu funkcji zamieniającej kolejność kluczy.
Array
(
[0-4] => 1
[5-9] => 0
[10-14] => 1
[15-19] => 1
[20-24] => 0
[25-29] => 4
[30-34] => 7
)
Funkcja
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
function zmienPozycje (&$tab, $v1, $v2) { $k = array_keys($tab); $v = array_values($tab); $k1 = array_search($v1, $k); $k2 = array_search($v2, $k); $tmp = $k[$k1]; $k[$k1] = $k[$k2]; $k[$k2] = $tmp; $tmp = $v[$k1]; $v[$k1] = $v[$k2]; $v[$k2] = $tmp; $tab = array_combine($k, $v); } |
Użycie
1 2 |
zmienPozycje($twoja_tablica, '5-9', '10-14'); zmienPozycje($twoja_tablica, '25-29', '20-24'); |
That’s all Folks!
Podobne tematy
Dodaj komentarz
O mnie
Najnowsze wpisy
- Drzewo kategorii – budowa struktury od dołu do góry
- PHPExcel – export + import pliku XLS
- WordPress + Polylang – Tworzenie klasy CSS z ID strony/wpisu w wybranym języku
- Mailing – Poprawna konstrukcja szablonu maila HTML/CSS i prawidłowy wygląd w programie pocztowym
- Szukasz programisty PHP dla e-commerce?