Mam problem: jak posortować tablicę bez zwracania uwagi na wielko¶ć
liter? sort(array) sortuje wg kodów ascii, czyli najpierw lec± duże litery,
potem małe. Poza tym chciałbym, żeby uwzględnione były polskie znaki...
natcasesort nie działa w ogóle... Widziałem gdzies tak± procedurę usort,
Pomocy!
Pozdrawiam,
Mam problem: jak posortować tablicę bez zwracania uwagi na wielko¶ć
liter? sort(array) sortuje wg kodów ascii, czyli najpierw lec± duże
litery, potem małe. Poza tym chciałbym, żeby uwzględnione były polskie
znaki... natcasesort nie działa w ogóle... Widziałem gdzies tak±
procedurę
co do pliterek - chyba tylko wlasne rozwiazanie wchodzi w gre. lub
szukaj na necie ;)
MySZ
w jakim sensie nie dziala ci natcasesort ? z pliterkami siem nie dziwie,
zazwyczaj tak jest (nawet po zmianie locali), ale nie uwzgledniajac tego
powinno smigac ;)
co do pliterek - chyba tylko wlasne rozwiazanie wchodzi w gre. lub
szukaj na necie ;)
function pl_cmp($a, $b) {
$a=pl_strtoupper($a);
$b=pl_strtoupper($b);
for ($i=0;$i<=(strlen($a)-1);$i++) {
$cc=ord($a{$i})*10;
switch ($cc) {
case 2020: $cc=695; break;
case 2110: $cc=795; break;
case 1610: $cc=655; break;
case 1660: $cc=835; break;
case 1630: $cc=765; break;
case 1750: $cc=905; break;
case 1720: $cc=907; break;
case 1980: $cc=675; break;
case 2090: $cc=785; break;
}
$c[$i]=sprintf("%04d",$cc);
}
}
}
}
w jakim sensie nie dziala ci natcasesort ? z pliterkami siem nie dziwie,
zazwyczaj tak jest (nawet po zmianie locali), ale nie uwzgledniajac tego
powinno smigac ;)
co do pliterek - chyba tylko wlasne rozwiazanie wchodzi w gre. lub
szukaj na necie ;)
function pl_cmp($a, $b) {
$a=pl_strtoupper($a);
$b=pl_strtoupper($b);
for ($i=0;$i<=(strlen($a)-1);$i++) {
$cc=ord($a{$i})*10;
switch ($cc) {
case 2020: $cc=695; break;
case 2110: $cc=795; break;
case 1610: $cc=655; break;
case 1660: $cc=835; break;
case 1630: $cc=765; break;
case 1750: $cc=905; break;
case 1720: $cc=907; break;
case 1980: $cc=675; break;
case 2090: $cc=785; break;
}
$c[$i]=sprintf("%04d",$cc);
}
}
}
}
w jakim sensie nie dziala ci natcasesort ? z pliterkami siem nie dziwie,
zazwyczaj tak jest (nawet po zmianie locali), ale nie uwzgledniajac tego
powinno smigac ;)
co do pliterek - chyba tylko wlasne rozwiazanie wchodzi w gre. lub
szukaj na necie ;)
function pl_cmp($a, $b) {
$a=pl_strtoupper($a);
$b=pl_strtoupper($b);
for ($i=0;$i<=(strlen($a)-1);$i++) {
$cc=ord($a{$i})*10;
switch ($cc) {
case 2020: $cc=695; break;
case 2110: $cc=795; break;
case 1610: $cc=655; break;
case 1660: $cc=835; break;
case 1630: $cc=765; break;
case 1750: $cc=905; break;
case 1720: $cc=907; break;
case 1980: $cc=675; break;
case 2090: $cc=785; break;
}
$c[$i]=sprintf("%04d",$cc);
}
}
}
}
w jakim sensie nie dziala ci natcasesort ? z pliterkami siem nie dziwie,
zazwyczaj tak jest (nawet po zmianie locali), ale nie uwzgledniajac tego
powinno smigac ;)
co do pliterek - chyba tylko wlasne rozwiazanie wchodzi w gre. lub
szukaj na necie ;)
function pl_cmp($a, $b) {
$a=pl_strtoupper($a);
$b=pl_strtoupper($b);
for ($i=0;$i<=(strlen($a)-1);$i++) {
$cc=ord($a{$i})*10;
switch ($cc) {
case 2020: $cc=695; break;
case 2110: $cc=795; break;
case 1610: $cc=655; break;
case 1660: $cc=835; break;
case 1630: $cc=765; break;
case 1750: $cc=905; break;
case 1720: $cc=907; break;
case 1980: $cc=675; break;
case 2090: $cc=785; break;
}
$c[$i]=sprintf("%04d",$cc);
}
}
}
}
w jakim sensie nie dziala ci natcasesort ? z pliterkami siem nie dziwie,
zazwyczaj tak jest (nawet po zmianie locali), ale nie uwzgledniajac tego
powinno smigac ;)
co do pliterek - chyba tylko wlasne rozwiazanie wchodzi w gre. lub
szukaj na necie ;)
function pl_cmp($a, $b) {
$a=pl_strtoupper($a);
$b=pl_strtoupper($b);
for ($i=0;$i<=(strlen($a)-1);$i++) {
$cc=ord($a{$i})*10;
switch ($cc) {
case 2020: $cc=695; break;
case 2110: $cc=795; break;
case 1610: $cc=655; break;
case 1660: $cc=835; break;
case 1630: $cc=765; break;
case 1750: $cc=905; break;
case 1720: $cc=907; break;
case 1980: $cc=675; break;
case 2090: $cc=785; break;
}
$c[$i]=sprintf("%04d",$cc);
}
}
}
}
w jakim sensie nie dziala ci natcasesort ? z pliterkami siem nie dziwie,
zazwyczaj tak jest (nawet po zmianie locali), ale nie uwzgledniajac tego
powinno smigac ;)
co do pliterek - chyba tylko wlasne rozwiazanie wchodzi w gre. lub
szukaj na necie ;)
function pl_cmp($a, $b) {
$a=pl_strtoupper($a);
$b=pl_strtoupper($b);
for ($i=0;$i<=(strlen($a)-1);$i++) {
$cc=ord($a{$i})*10;
switch ($cc) {
case 2020: $cc=695; break;
case 2110: $cc=795; break;
case 1610: $cc=655; break;
case 1660: $cc=835; break;
case 1630: $cc=765; break;
case 1750: $cc=905; break;
case 1720: $cc=907; break;
case 1980: $cc=675; break;
case 2090: $cc=785; break;
}
$c[$i]=sprintf("%04d",$cc);
}
}
}
}
Tę wiadomo¶ć musiałem wysyłać parę razy, bo debilne cancelboty kasuj± posty
w UTF-8, a z kolei we wklejonej funkcji miałem znaki w ISO, które wklejone
bezpo¶rednio w okno Dialoga powoduj± wysłanielistu w tym formacie -
sk±din±d bardzo prawidłowo. Dlaczego w 2003 roku wci±ż jeszcze kasuje się
posty w UTF-8? Przecież to bez sensu!
Pozdrawiam,
w jakim sensie nie dziala ci natcasesort ? z pliterkami siem nie dziwie,
zazwyczaj tak jest (nawet po zmianie locali), ale nie uwzgledniajac tego
powinno smigac ;)
co do pliterek - chyba tylko wlasne rozwiazanie wchodzi w gre. lub
szukaj na necie ;)
function pl_cmp($a, $b) {
$a=pl_strtoupper($a);
$b=pl_strtoupper($b);
for ($i=0;$i<=(strlen($a)-1);$i++) {
$cc=ord($a{$i})*10;
switch ($cc) {
case 2020: $cc=695; break;
case 2110: $cc=795; break;
case 1610: $cc=655; break;
case 1660: $cc=835; break;
case 1630: $cc=765; break;
case 1750: $cc=905; break;
case 1720: $cc=907; break;
case 1980: $cc=675; break;
case 2090: $cc=785; break;
}
$c[$i]=sprintf("%04d",$cc);
}
}
}
}
Tę wiadomo¶ć musiałem wysyłać parę razy, bo debilne cancelboty kasuj± posty
w UTF-8, a z kolei we wklejonej funkcji miałem znaki w ISO, które wklejone
bezpo¶rednio w okno Dialoga powoduj± wysłanielistu w tym formacie -
sk±din±d bardzo prawidłowo. Dlaczego w 2003 roku wci±ż jeszcze kasuje się
posty w UTF-8? Przecież to bez sensu!
Pozdrawiam,