Проблема с strtr

Тема в разделе "PHP Pro", создана пользователем swer, 28 ноя 2009.

Статус темы:
Закрыта.
  1. swer

    swer

    Регистр.:
    15 июн 2008
    Сообщения:
    308
    Симпатии:
    38
    Здравствуйте.Вот в ходе работы сталкнулся с проблемой,а именно с ф-ей strtr.Вот код
    PHP:
    $out_text $_POST['text'];
        
    $arr = array();
        for(
    $e=0;$e<count($f_rep);$e++){
            
    $repl=explode(",",$f_rep[$e]);
            
    $arr[$repl[0]] = $repl[1];
            }
           
    $out_text strtr($out_text$arr);
    где параметр $f_rep содержит данные типа
    array("а,б","в,г" и тд)
    задача заменить в текста значения,но проблема в том что напроч не хочеть выполнять, что не так сделал подскажите,долго ломал голову но так и не нашел причину,но если просто написать
    $arr = array("а"=>"б") те без цыкла все работает...
     
  2. potuga

    potuga

    Регистр.:
    22 сен 2009
    Сообщения:
    376
    Симпатии:
    91
    Cделай var_dump($arr), увидишь в чем проблема. Либо сохрани файл, например, в cp1251, либо используй мультибайтовые функции для работы с utf
     
    swer нравится это.
  3. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    хочется все же полный код увидеть

    но
    $arr = array("а"=>"б")
    совсем не тоже самое что
    array("а,б","в,г" и тд)
     
    swer нравится это.
  4. BDSG

    BDSG

    Регистр.:
    28 фев 2009
    Сообщения:
    203
    Симпатии:
    109
    вообще то все должно работать.. проверь кодировки текста в переменных..
     
    swer нравится это.
  5. swer

    swer

    Регистр.:
    15 июн 2008
    Сообщения:
    308
    Симпатии:
    38
    уже анализировал,аррай выдает правильную структуру,тож думал что в кодировке,сменял на ютф8 тож без результата...

    полный код еще запутенней чем этот отрезок,я дал лиш то место где проблема,а насчет "array("а,б","в,г" и тд) " вы наверное не обратили внимание на "$repl=explode(",",$f_rep[$e]);"

    думаю этот случай из темы "забытая запятая",поэтму не стал дальше разбиратся и ломать голову а сделал немного по другому используя str_replace, хот и не так получилось как хотелось...
    Всем спасибо,можно закрывать.
     
Статус темы:
Закрыта.