strtr + utf8
sziasztok. valakinek valami otlet erre:
function mertnemjo ($link){
$link = utf8_decode($link);
$link = strtr($link, utf8_decode(" ÁÂÅAÄÀCÇCDÉÈËEÌÍÎÏLNNÑÒÓÔÕÖRRŠSTUÚUÜÝŽZáâåäàcçcddéeëeèìíîïlnnñòóôoöšsrrtuúuüýžz?
ßAµAµaAeEsSzZzZcClLóÓnN"), "-AAAAAACCCDEEEEIIIILNNNOOOOORRSOTUUUUYZZaaaaacccddeeeeeiiiilnnnooooossrrtuuuuyzz-sAuAuaAeEsSzZzZcClLoOnN");
$link = strtolower($link);
return $link;
}
ez igy szepen es jol mukodik, de nincs benne az Ő es Ű betu.
viszont ha belerakom oket, akkor attol fuggoen h milyen sorrendben raktam oket
bele vagy mindkettot o-ra csereli, vagy mindkettot u-ra.
mit lehet ezzel kezdeni? v miert van ez?
thx
■ function mertnemjo ($link){
$link = utf8_decode($link);
$link = strtr($link, utf8_decode(" ÁÂÅAÄÀCÇCDÉÈËEÌÍÎÏLNNÑÒÓÔÕÖRRŠSTUÚUÜÝŽZáâåäàcçcddéeëeèìíîïlnnñòóôoöšsrrtuúuüýžz?
ßAµAµaAeEsSzZzZcClLóÓnN"), "-AAAAAACCCDEEEEIIIILNNNOOOOORRSOTUUUUYZZaaaaacccddeeeeeiiiilnnnooooossrrtuuuuyzz-sAuAuaAeEsSzZzZcClLoOnN");
$link = strtolower($link);
return $link;
}
ez igy szepen es jol mukodik, de nincs benne az Ő es Ű betu.
viszont ha belerakom oket, akkor attol fuggoen h milyen sorrendben raktam oket
bele vagy mindkettot o-ra csereli, vagy mindkettot u-ra.
mit lehet ezzel kezdeni? v miert van ez?
thx
grrr
vegigszorakoztam az osszes kodlapot, es ugy masfel ora utan
ezt a ket karaktert kulon csereltettem le egy
ereg_replace()-szel.. fantasztikus..
Egy megoldás
Angolul nem tudóknak, a linkre kattintani lustáknak és a linkből a megoldást meg nem értőknek röviden annyi, hogy az strtr (PHP 5.2-ben legalábbis biztosan) bizonyos karakterekre rosszul működik több, ha a sztringes megadási módot használod:
De ha megadod neki tömbként a mapet, hogy mit mire cseréljen, akkor máris frankó lesz:
Remélem, segítettem :)
--
VDavid
ISO-8859-1
Azaz ISO-8859-1 katereket tartalmazó stringet konvertál. És az Ő Ű nem reprezentálható ISO-8859-1 segítségével.
Ha az ékezeteket szeretnéd eltávolítani, ajánlom ezt: