Справочник по PHP

         

Комплексная замена в строке


strtr

Комплексная замена в строке.

Синтаксис :

string strtr(string str, string from, string to)

string strtr(string str, array from)

В первом случае функция strtr() возвращает строку str, у которой каждый символ, присутствующий в строку from, заменяется на корреспондирующий из строки to. В случае, если строки from и to

различной длины, то лишние конечные символы длинной строки игнорируются.

Во втором случае функция strtr() возвращает строку, в которой фрагменты строки str заменяются на соответствующие индексам значения элементов массива from. При этом функция пытается заменить сначало наибольшие фрагменты исходной строки и не выполняет замену в уже модифицированных частях строки. Таким бразом, теперь мы можем выполнить несколько замен сразу:

$Subs = array(  "<name>" => "Larry",  "<time>" => date("d.m.Y"));$st="Привет, <name>! Сейчас <time";echo strtr($st,$Subs);

А вот как можно "отменить" действие функции HtmlSpecialChars():

$Trans=array_flip(get_html_translation_table());$st=strtr($st, $Trans);

В результате мы из строки, в которой все спецсимволы заменены на их HTML-эквиваленты, получим исходную строку.



Содержание раздела