ФорумПрограммированиеPHP для идиотов → Строка не переводиться в верхний регистр

Строка не переводиться в верхний регистр

  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 24 января 2010 г. 2:26

    kichSman, /iu
    вероятно поможет
    Сапожник без сапог
  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 24 января 2010 г. 3:05, спустя 38 минут 11 секунд

    kichSman, скрипт в какой кодировке? Данные в какой кодировке приходят?
    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 24 января 2010 г. 5:07, спустя 2 часа 2 минуты 15 секунд

    которые тоже в Win
    уверены?

    echo strlen($text)
    Сапожник без сапог
  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 24 января 2010 г. 13:41, спустя 8 часов 34 минуты 1 секунду

    kichSman, дайте файл скрипта, потестю
    Спустя 16 сек.
    ну и данные можно дать
    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 24 января 2010 г. 15:44, спустя 2 часа 3 минуты

    вот этот пример должен работать под Linux/Windows/FreeBSD. кодировка файла windows-1251

    <?php

    $locale = array('russian','ru_RU.CP1251', 'ru_RU');
    $pattern = '/абв/i';
    $source = 'ФЫВАБВГД';

    $old = setlocale(LC_ALL, NULL);
    $new = setlocale(LC_ALL, $locale);

    header('Content-type: text/plain; charset=windows-1251');
    echo 'Old locale = '.$old."\n";
    echo 'New locale = '.$new."\n";
    echo preg_replace($pattern, '*', $source);

    Правильный ответ "ФЫВ*ГД"
    На доступном мне Linux без указания новой локали получаю "ФЫВАБВГД", а с локалью всё Ok
    ιιlllιlllι унц-унц
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 24 января 2010 г. 18:00, спустя 2 часа 16 минут 23 секунды

    kichSman, ты попробовал установить локаль?
    ιιlllιlllι унц-унц
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 24 января 2010 г. 18:06, спустя 6 минут 7 секунд

    хороший ответ :) тогда работай в UTF-8 с модификатором "u". других решений в этой задаче нет
    ιιlllιlllι унц-унц
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 24 января 2010 г. 18:21, спустя 14 минут 35 секунд

    лучше не спрашивай ни о чём, если тебя устраивают такие "решения".
    ιιlllιlllι унц-унц
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 24 января 2010 г. 18:33, спустя 12 минут 3 секунды

    обожаю машинный перевод.
    правда в том, что если ты используешь shared hosting, то любая сволочь на том же физическом сервере может изменить твою локаль. это так! но эта локаль повлияет не только на регекспы, а, блядь, еще на туеву хучу не-мультибайтных операций со строками. так что не строй из себя девочку, ставь локаль и молись чтобы за твои 3€ в месяц не случился какой-нибудь немец на твоем же сервере.
    ιιlllιlllι унц-унц

Пожалуйста, авторизуйтесь, чтобы написать комментарий!