1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Preg_replace и кодировка Utf-8

Тема в разделе "Web - программирование", создана пользователем Sergvic, 16 июн 2007.

  1. Sergvic

    Sergvic Гость

    Репутация:
    0
    Есть русский текст в кодировке UTF-8. После применения к нему функции preg_replace тест становится не читабельным, т.е. появляются в броузере знаки вопроса.
    Использовал для проверки такой скрипт
    Код:
    <?
    setlocale("LC_ALL","ru_RU");
    $string="Ваш выбор";
    echo $string;
    $string = strtolower(preg_replace('/\s+/','_',$string));
    echo $string;
    ?>
     
  2. MajestiC

    MajestiC Гость

    Репутация:
    0
    http://www.php.net/manual/ru/reference.pcr...n.modifiers.php

    В итоге нужно заменить
    $string = strtolower(preg_replace('/\s+/','_',$string));
    на
    $string = strtolower(preg_replace('/\s+/u','_',$string));
     
  3. Sergvic

    Sergvic Гость

    Репутация:
    0
    Что-то не помогло. Тоже самое.
     
  4. _serg_

    _serg_ Гость

    Репутация:
    0
    а в хттп-заголовке какая кодировка прописана?
     
  5. Sergvic

    Sergvic Гость

    Репутация:
    0
    Стои utf-8
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     
  6. korvin0

    korvin0 Гость

    Репутация:
    0
    Какая у тебя версия PHP?

    Только с версии 5.0.5 PCRE обновили до 5.0 (http://www.php.net/ChangeLog-5.php#5.0.5) => До этого не работало как надо UTF-8 в pcre.

    Если iconv подключен, можешь конвертить в другую кодировку и там preg_replace'ить:
    <?
    $string="Ваш выбор";
    echo $string;
    $string = strtolower(preg_replace('/\s+/','_',iconv('UTF-8','cp1251',$string)));
    $string = iconv('cp1251','UTF-8',$string);
    echo $string;
    ?>
     
  7. Sergvic

    Sergvic Гость

    Репутация:
    0
    Вот спасибо. Через iconv работает.
     
Загрузка...
Похожие Темы - Preg_replace кодировка Utf
  1. slavon-x86
    Ответов:
    2
    Просмотров:
    3.017
  2. Wanderer
    Ответов:
    11
    Просмотров:
    794
  3. NickProstoNick
    Ответов:
    6
    Просмотров:
    495
  4. R4z0R
    Ответов:
    17
    Просмотров:
    1.827
  5. PaKo
    Ответов:
    1
    Просмотров:
    1.191

Поделиться этой страницей