Tömb rendezés őű gondok
Sziasztok,
asort()-tal szeretnék rendezni egy tömböt, pl elemei:
1. a
2. b
3. c
4. d
5. á
6. ő
7. ű
Eredményként az ő meg az ű a lista elejére kerül, az á meg az egész végére... szóval nem szeretni a magyar ékezeteket, tud valaki megoldást?
köszi!
■ asort()-tal szeretnék rendezni egy tömböt, pl elemei:
1. a
2. b
3. c
4. d
5. á
6. ő
7. ű
Eredményként az ő meg az ű a lista elejére kerül, az á meg az egész végére... szóval nem szeretni a magyar ékezeteket, tud valaki megoldást?
köszi!
usort?
usort -- tömböt rendez elemértékei alapján egy felhasználó összehasonlító függvénnyel
sort
uasort
(php.net-ről):
function cmp ($a, $b) {
if ($a == $b) return 0;
return ($a > $b) ? -1 : 1;
}
$a = array (3, 2, 5, 6, 1);
usort ($a, "cmp");
amit ebből nem értek hogy mi itt a 0 meg a -1:1 és fogalmam nincs hogy lehetne átírni egy sima abc rendezésre, ahol az ő ű betűk is szerepet játszanak jah és a kis nagy betűket sem kéne külön raknia.
sort_flags: SORT_LOCALE_STRING + setlocale()
SORT_NUMERIC - compare items numerically
SORT_STRING - compare items as strings
SORT_LOCALE_STRING - compare items as strings, based on the current locale. Added in PHP 4.4.0 and 5.0.2. It uses the system locale, which can be changed using setlocale()
és (pl) így állítod magyarra a lokalitást stringek összehasonlításához
(itt többféle módon is megadtam neki -> win/linux másképp kezeli elvileg :)
Ott a pont
Magyar abc szerinti rendezés
abc rendezés
Magyar abc szerinti rendezés
Balogh Tibor megoldása közelebb áll a magyar szabályokhoz
Köszi a bizalmat!
helyes rendezés
Rendezés és karakterkódolás
nem utf8 esetén
Nem lehet ezen valamit módosítani, hogy ne csak utf8-ban működjön? :S
Ha azt szeretnéd, hogy külön
Jó ötlet
A0 0h0a0z0u0g0 0e0m0b0e0r0t0 0h0a0m0a0r0a0b0b0
Az ékezeteseket pedig 1,2,3 posztfixekkel jelölöd pl: ó = "o1", ö = "o2", ő = "o3"
így a visszakonvertálás is lehetséges az eredeti stringekre.
Már így is, hogy csak az
Visszakovertálni pedig nincs mit, lévén az eredeti tömbben semmi nem változik.
Környezet
Ilyeneket pl:Array ( [0]
Usort
Usort()-tal sem gyorsabb mint
Egyébként pár ezer rekord.
Cache
utf-8
mb_internal_encoding('UTF-8');