str_ireplace

 
0
 
PHP
ava
ekodrive | 23.01.2013, 09:54
Добрый день друзья не знаю как делать вот код


function it($soz){
      $arr1=array("1","2","3","4","13","44");
      $arr2=array("text1","text2","text3","text4","text5","text6");
      $netice=str_ireplace($arr1,$arr2,$soz);
      echo $netice;
  }
it(44);

Результат должен быть text6 а выводит text2text2 как быть ??
Ответы (2)
ava
Aliance | 23.01.2013, 10:09 #
Ну только все-таки выводит text4text4. Что и логично. Заменяется сперва первая четверка, потом вторая. Как вариант - поменять порядок замен в массиве:

function it($soz) {
    $arr1=array("13","44","1","2","3","4");
    $arr2=array("text5","text6","text1","text2","text3","text4");
    $netice=str_ireplace($arr1,$arr2,$soz);
    echo $netice;
}
ava
ekodrive | 23.01.2013, 11:06 #
Вот лучший вариант

function it($soz){
      $arr = array(
         "1" => "text1",
         "2" => "text2",
         "3" => "text3",
         "4" => "text4",
         "13" => "text5",
         "44" => "text6"
       );

      $netice = strtr($soz, $arr);
      echo $netice;
  }
it('44');
Зарегистрируйтесь или войдите, чтобы написать.
Фирма дня
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Участники
advanced
Отправить