W tym artykule chciałem zwrócić uwagę na pewne funkcje podmieniające ciągi znaków.
Aby zamienić ciąg znaków na pisany małymi literami używamy funkcji strtolower($ciag).
Aby zamienić ciąg znaków na pisany dużymi literami używamy funkcji strtoupper($ciag).
Jednak w powyższych funkcjach występuje problem z kodowaniem wszystkich znaków PL (w przypadku zastosowania niektórych czcionek). Poniżej fragment kodu PHP do przetestowania:
$przyklad1="ęóąśłżźćń";$przyklad2="ĘÓĄŚŁŻŹĆŃ";echo strtoupper($przyklad1);echo strtolower($przyklad2);Wynik:ęaąśłżUćń?????????rn
rnJeżeli u Ciebie też występuje taki problem użyj nowych funkcji PHP, które na tą przypadłość są "uodpornione", ponieważ podasz dodatkowy argument funkcji odpowiadający za kodowanie zamienianych znaków.
rn
Są to następujące funkcje:
mb_strtoupper($str,[$encoding])
przykład użycia: mb_strtoupper($przyklad1,'UTF-8');
mb_strtolower($str,[$encoding])
przykład użycia: mb_strtolower($przyklad2,'UTF-8');
rn