Написать письмо авторам  
 

УЧЕБНИК PHP


справочник функций <Оnline>

Об учебнике

Обновление

Оглавление

  1. Основы PHP
  2. Операторы языка PHP
  3. Строковые функции

Продолжение следует




Строковые функции PHP

Предыдущая Следующая

Функции работы с блоками текста


wordwrap() 
str_replace() 
substr_replace() 
strtr() 
stripslashes() 
stripcslashes() 
addslashes() 
addcslashes() 
quotemeta() 
strrev() 

wordwrap()

Синтаксис:

string wordwrap(string str [, int width [, string break [, int cut]]])

Функция wordwrap() разбивает исходный текст на строки с определенными завершающими символами. Согласно синтаксису, эта функция разбивает блок текста str на несколько строк, которые завершаеются символами break, так, чтобы в одной строке было не более width букв. Поскольку разбиение происходит по границам слов, текст остается вполне читаемым.

К примеру:

<?
   $str = "Вставай, страна огромная";
   $mod_str = wordwrap($str,5,"\t");
   echo($mod_str);
?>


str_replace()

Синтаксис:

string str_replace(string from, string to, string str)

Функция str_replace() заменяет в исходной строке str одни подстроки на другие. Т.е. функция заменяет в строке str все вхождения подстроки from на to и возвращает результат. Эта функция может работать с двоичными строками.

Функция, вообще говоря, нужная. К примеру, если Вы пишите что-то типа гостевой книги, форума, и хотите, чтобы в форме ввода для выделения теста можно было пользоваться стандарными тегами HTML, Вы можете с помощью этой функции заменить символы, которые Вы выбрали для форматирования на стандартные теги НТML. К примеру:

   $txt = str_replace("[B]","<B>",$txt);

Т.е. если Вы используете для отображения текста полужирным шрифтом символы "[B]", Вы должны их заменить на символ "<B>", используемые в НТМL.

Позже, при написании реального проекта, мы обязательно будем использовать как эту, так и многие другие, рассмотренные нами функции.



substr_replace()

Синтаксис:

string substr_replace(string str, string replacement, int start [, int length])

Эта функция заменяет в исходной строке одни подстроки на другие. Она возвращает строку str, в которой часть от символа с позицией start и длиной length заменяется строкой replacement. Если аргумент длины length не указан, замена проводится до конца.

Если значение аргумента start положительно, то отсчет производится от начала строки str, в противном случае - от конца. В случае неотрицательного значения length, оно указывает длину заменяемого фрагмента. Если же оно отрицательно, то это - число символов от конца строки str до последнего символа заменяемого фрагмента.



strtr()

Синтаксис:

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

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

<?
   $str = array("" => "M.Kuznetsov",
             "<name2>" => "I.Simdyanov");
   $str_out = "Авторы этого учебника  и  приветствуют вас!";
   echo strtr($str_out,$str);
?>

А вот как можно при помощи этой функции отменить действие функции htmlspecialchars():

<?
   $var = array_flip(get_html_translation_table());
   $str = strtr($str, $var);
?>

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



stripslashes()

Синтаксис:

string stripslashes(string str)

Функция удаления обратных слешей. Т.е. производится замена в строке str предваренных слешем символов на их кодовые эквиваленты. Функция работает с символами: ", ", \.



stripcslashes()

Синтаксис:

string stripcslashes(string str)

А эта функция преобразует спецсимволы в их двоичное представление.

Она возвращает строку, в которой закомментированные обратным слешем спецсимволы, (с целью визуального отображения), преобразуются в их двоичное представление. Функция распознает C-подобные записи (восьмеричные и шестнадцатеричные последовательности \n, \r и т.д.).



addslashes()

Синтаксис:

string addslashes(string str)

Функция добавления слешей перед символами строки "," и \. Эту функцию удобно использовать при вызове функции eval().



addcslashes()

Синтаксис:

string addcslashes(string str, string charlist)

Функция добавление слешей перед специальными символами строки.

Возвращает строку str, в которую вставлены символы обратного слеша перед перечисленными в списке charlist символами. Это позволяет преобразовывать символы, которые не печатаются в их визуальное С-представление.



quotemeta()

Синтаксис:

string quotemeta(string str)

Функция цитирования метасимволов. Возвращает строку, в которую добавлены обратные слеши перед каждым из следующих символов: . \\ + * ? [ ^ ] ( $ ). Функцию можно использовать для подготовки шаблонов в регулярных выражениях.



strrev()

Синтаксис:

string strrev(string str)

Функция производит реверс строки.



Предыдущая Следующая

 
  Наверх