Решение проблемы strtolower() strtoupper() с русским языком
Проблемы при работе с кириллицей в PHP-скриптах функций strtoupper() и strtolower() возникают когда текущая локаль (locale) определена не в той кодировке которая интерпретируется по умолчанию. Для правильного её определения следует воспользоваться функцией setlocale() в самом начале вашего PHP-скрипта:
<?php
setlocale(LC_ALL, 'ru_RU.CP1251'); echo strtoupper('Тестируем работу ЭТОГО скрипта!');
?>
Чтобы изменить кодировку для Вашего скрипта, измените 'ru_RU.CP1251' на нужную. Если все же это не сработало, по всей видимости настройки PHP не могут найти нужную локаль.
Чтобы указать PHP эту локаль, потребуется некоторые операции через SSH на Вашем сервере. Так же по всей видимости, Вам потребуется попросить системного администратора сделать это, если Вы имеете виртуальный хостинг.
Чтобы указать или узнать нужную локаль, просмотрите папку /usr/share/locale Для русского языка, это:
ru_RU.CP1251 ru_RU.CP866 ru_RU.ISO8859-5 ru_RU.ISO_8859-5 ru_RU.KOI8-R ru_SU.CP866 ru_SU.ISO8859-5 ru_SU.ISO_8859-5 ru_SU.KOI8-R
|