Привет, Гость!
Учебник PHP #8
str_replace("chicken_wings", "pizza", $favohte_food);
// $favorite_food = "My favorite foods are ice cream and pizza"
strstr( )
Функция strstr( ) возвращает часть строки, начинающуюся с первого вхождения заданной подстроки. Синтаксис функции strstr( ):
string strstr (string строка, string подстрока)
В следующем примере функция strstr( ) используется для выделения имени домена из URL:
$url = "http://www.apress.com"; $domain - strstr($url, ".");
// $domain = ".apress.com"
substr( )
Функция substr( ) возвращает часть строки, начинающуюся с заданной начальной позиции и имеющую заданную длину. Синтаксис функции substr( ):
string substr (string строка, int начало [, int длина])
Если необязательный параметр длина не указан, считается, что подстрока начинается с заданной начальной позиции и продолжается до конца строки. При использовании этой функции необходимо учитывать четыре обстоятельства:
если параметр начало положителен, возвращаемая подстрока начинается с позиции строки с заданным номером;
если параметр начало отрицателен, возвращаемая подстрока начинается с позиции (длина строки - начало);
если параметр длина положителен, в возвращаемую подстроку включаются все символы от позиции начало до позиции начало+длина. Если последняя величина превышает длину строки, возвращаются символы до конца строки;
если параметр длина отрицателен, возвращаемая подстрока заканчивается на заданном расстоянии от конца строки.
Помните о том, что параметр начало определяет смещение от первого символа строки; таким образом, возвращаемая строка в действительности начинается с символа с номером (начало + 1).
Следующий пример демонстрирует выделение части строки функцией substr( ):
$car = "1944 Ford"; Smodel = substr($car, 6);
// Smodel = "Ford"
Пример с положительным параметром длина:
$car = "1944 Ford";
$model = substr($car, 0, 4);
// $model = "1944"
Пример с отрицательным параметром длина:
$car = "1944 Ford";
$model = substr($car, 2, -5);
// $model = "44"
substr_count( )
Функция substr_count( ) возвращает количество вхождений подстроки в заданную строку. Синтаксис функции substr_count( ):
int substr_count (string строка, string подстрока)
В следующем примере функция substr_count( ) подсчитывает количество вхождений подстроки ain:
$tng_twist = "The rain falls mainly on the plains of Spain";
$count = substr_count($tng_twist, "ain");
// $count = 4
substr_replace( )
Функция substr_replace( ) заменяет часть строки, которая начинается с заданной позиции. Если задан необязательный параметр длина, заменяется фрагмент заданной длины; в противном случае производится замена по всей длине заменяющей строки. Синтаксис функции substr_replace( ):
string substr_replace (string строка, string замена, int начало [, int длина])
Параметры начало и длина задаются по определенным правилам:
если параметр начало положителен, замена начинается с заданной позиции;
если параметр начало отрицателен, замена начинается с позиции (длина строки -начало);
если параметр длина положителен, заменяется фрагмент заданной длины;
если параметр длина отрицателен, замена завершается в позиции (длина строки -длина).
Простая замена текста функцией substr_replace( ) продемонстрирована в следующем примере:
$favs = " 's favorite links";
$name = "Alessia";
// Параметры "0, 0" означают, что заменяемый фрагмент начинается
// и завершается в первой позиции строки.
$favs - substr_replace($favs, $name, 0, 0);
print $favs:
Результат:
Alessia's favorite links
Преобразование строк и файлов к формату HTML и наоборот
Преобразовать строку или целый файл к формату, подходящему для просмотра в web-браузере (или наоборот), проще, чем может показаться на первый взгляд. В РНР для этого существуют специальные функции.
Преобразование текста в HTML
Быстрое преобразование простого текста к формату web-браузера — весьма распространенная задача. В ее решении вам помогут функции, описанные в этом разделе.
nl2br( )
Функция nl2br( ) заменяет все символы новой строки (\n) эквивалентными конструкциями HTML <br>.
Синтаксис функции nl2br( ):
string nl2br (string строка)
Символы новой строки могут быть как видимыми (то есть явно включенными в строку), так и невидимыми (например, введенными в редакторе). В следующем примере текстовая строка преобразуется в формат HTML посредством замены символов \n разрывами строк:
// Текстовая строка, отображаемая в редакторе.
$text_recipe = "
Party Sauce recipe:
1 can stewed tomatoes
3 tablespoons fresh lemon juice
Stir together, server cold.";
// Преобразовать символы новой строки в <br>
$htinl_recipe = nl2br($text_recipe)
При последующем выводе $html_recipe браузеру будет передан следующий текст в формате HTML:
Party Sauce recipe:<br>
1 can stewed tomatoes<br>
3 tablespoons fresh lemon juice<br>
Stir together, server cold.<br>
htmlentities( )
Функция htmlentities( ) преобразует символы в эквивалентные конструкции HTML. Синтаксис функции htmlentities:
string htmlentities (string строка)
В следующем примере производится необходимая замена символов строки для вывода в браузере:
$user_input = "The cookbook, entitled Cafe Francaise' costs < $42.25.";
$converted_input = htmlentities($user_input);
// $converted_input = "The cookbook, entitled 'Cafè
// Fracçiaise' costs < 42.25.";
Функция htmlentities( ) в настоящее время работает только для символов кодировки ISO-8559-1 (ISO-Latin-1). Кроме того, она не преобразует пробелы в , как следовало бы ожидать.
htmlspecialchars( )
Функция htmlspecialchars( ) заменяет некоторые символы, имеющие особый смысл в контексте HTML, эквивалентными конструкциями HTML. Синтаксис функции htmlspecialchars( ):
string htmlspecialchars (string строка)
Функция html special chars( ) в настоящее время преобразует следующие символы:
& преобразуется в &; " " преобразуется в ";
< преобразуется в <; > преобразуется в >.
В частности, эта функция позволяет предотвратить ввод пользователями разметки HTML в интерактивных web-приложениях (например, в электронных форумах). Ошибки, допущенные в разметке HTML, могут привести к тому, что вся страница будет формироваться неправильно. Впрочем, у этой задачи существует и более эффективное решение — полностью удалить теги из строки функцией strip_tags( ).
Следующий пример демонстрирует удаление потенциально опасных символов функцией htmlspeclalchars( ):
$user_input = "I just can't get «enough» of PHP & those fabulous cooking recipes!";
$conv_input = htmlspecialchars($user_input);
// $conv_input = "I just can't <<enough>> of PHP & those fabulous cooking
recipes!"
Если функция htmlspecialchars( ) используется в сочетании с nl2br( ), то последнюю следует вызывать после htmlspecialchars( ). В противном случае конструкции <br>, сгенерированные
// $favorite_food = "My favorite foods are ice cream and pizza"
strstr( )
Функция strstr( ) возвращает часть строки, начинающуюся с первого вхождения заданной подстроки. Синтаксис функции strstr( ):
string strstr (string строка, string подстрока)
В следующем примере функция strstr( ) используется для выделения имени домена из URL:
$url = "http://www.apress.com"; $domain - strstr($url, ".");
// $domain = ".apress.com"
substr( )
Функция substr( ) возвращает часть строки, начинающуюся с заданной начальной позиции и имеющую заданную длину. Синтаксис функции substr( ):
string substr (string строка, int начало [, int длина])
Если необязательный параметр длина не указан, считается, что подстрока начинается с заданной начальной позиции и продолжается до конца строки. При использовании этой функции необходимо учитывать четыре обстоятельства:
если параметр начало положителен, возвращаемая подстрока начинается с позиции строки с заданным номером;
если параметр начало отрицателен, возвращаемая подстрока начинается с позиции (длина строки - начало);
если параметр длина положителен, в возвращаемую подстроку включаются все символы от позиции начало до позиции начало+длина. Если последняя величина превышает длину строки, возвращаются символы до конца строки;
если параметр длина отрицателен, возвращаемая подстрока заканчивается на заданном расстоянии от конца строки.
Помните о том, что параметр начало определяет смещение от первого символа строки; таким образом, возвращаемая строка в действительности начинается с символа с номером (начало + 1).
Следующий пример демонстрирует выделение части строки функцией substr( ):
$car = "1944 Ford"; Smodel = substr($car, 6);
// Smodel = "Ford"
Пример с положительным параметром длина:
$car = "1944 Ford";
$model = substr($car, 0, 4);
// $model = "1944"
Пример с отрицательным параметром длина:
$car = "1944 Ford";
$model = substr($car, 2, -5);
// $model = "44"
substr_count( )
Функция substr_count( ) возвращает количество вхождений подстроки в заданную строку. Синтаксис функции substr_count( ):
int substr_count (string строка, string подстрока)
В следующем примере функция substr_count( ) подсчитывает количество вхождений подстроки ain:
$tng_twist = "The rain falls mainly on the plains of Spain";
$count = substr_count($tng_twist, "ain");
// $count = 4
substr_replace( )
Функция substr_replace( ) заменяет часть строки, которая начинается с заданной позиции. Если задан необязательный параметр длина, заменяется фрагмент заданной длины; в противном случае производится замена по всей длине заменяющей строки. Синтаксис функции substr_replace( ):
string substr_replace (string строка, string замена, int начало [, int длина])
Параметры начало и длина задаются по определенным правилам:
если параметр начало положителен, замена начинается с заданной позиции;
если параметр начало отрицателен, замена начинается с позиции (длина строки -начало);
если параметр длина положителен, заменяется фрагмент заданной длины;
если параметр длина отрицателен, замена завершается в позиции (длина строки -длина).
Простая замена текста функцией substr_replace( ) продемонстрирована в следующем примере:
$favs = " 's favorite links";
$name = "Alessia";
// Параметры "0, 0" означают, что заменяемый фрагмент начинается
// и завершается в первой позиции строки.
$favs - substr_replace($favs, $name, 0, 0);
print $favs:
Результат:
Alessia's favorite links
Преобразование строк и файлов к формату HTML и наоборот
Преобразовать строку или целый файл к формату, подходящему для просмотра в web-браузере (или наоборот), проще, чем может показаться на первый взгляд. В РНР для этого существуют специальные функции.
Преобразование текста в HTML
Быстрое преобразование простого текста к формату web-браузера — весьма распространенная задача. В ее решении вам помогут функции, описанные в этом разделе.
nl2br( )
Функция nl2br( ) заменяет все символы новой строки (\n) эквивалентными конструкциями HTML <br>.
Синтаксис функции nl2br( ):
string nl2br (string строка)
Символы новой строки могут быть как видимыми (то есть явно включенными в строку), так и невидимыми (например, введенными в редакторе). В следующем примере текстовая строка преобразуется в формат HTML посредством замены символов \n разрывами строк:
// Текстовая строка, отображаемая в редакторе.
$text_recipe = "
Party Sauce recipe:
1 can stewed tomatoes
3 tablespoons fresh lemon juice
Stir together, server cold.";
// Преобразовать символы новой строки в <br>
$htinl_recipe = nl2br($text_recipe)
При последующем выводе $html_recipe браузеру будет передан следующий текст в формате HTML:
Party Sauce recipe:<br>
1 can stewed tomatoes<br>
3 tablespoons fresh lemon juice<br>
Stir together, server cold.<br>
htmlentities( )
Функция htmlentities( ) преобразует символы в эквивалентные конструкции HTML. Синтаксис функции htmlentities:
string htmlentities (string строка)
В следующем примере производится необходимая замена символов строки для вывода в браузере:
$user_input = "The cookbook, entitled Cafe Francaise' costs < $42.25.";
$converted_input = htmlentities($user_input);
// $converted_input = "The cookbook, entitled 'Cafè
// Fracçiaise' costs < 42.25.";
Функция htmlentities( ) в настоящее время работает только для символов кодировки ISO-8559-1 (ISO-Latin-1). Кроме того, она не преобразует пробелы в , как следовало бы ожидать.
htmlspecialchars( )
Функция htmlspecialchars( ) заменяет некоторые символы, имеющие особый смысл в контексте HTML, эквивалентными конструкциями HTML. Синтаксис функции htmlspecialchars( ):
string htmlspecialchars (string строка)
Функция html special chars( ) в настоящее время преобразует следующие символы:
& преобразуется в &; " " преобразуется в ";
< преобразуется в <; > преобразуется в >.
В частности, эта функция позволяет предотвратить ввод пользователями разметки HTML в интерактивных web-приложениях (например, в электронных форумах). Ошибки, допущенные в разметке HTML, могут привести к тому, что вся страница будет формироваться неправильно. Впрочем, у этой задачи существует и более эффективное решение — полностью удалить теги из строки функцией strip_tags( ).
Следующий пример демонстрирует удаление потенциально опасных символов функцией htmlspeclalchars( ):
$user_input = "I just can't get «enough» of PHP & those fabulous cooking recipes!";
$conv_input = htmlspecialchars($user_input);
// $conv_input = "I just can't <<enough>> of PHP & those fabulous cooking
recipes!"
Если функция htmlspecialchars( ) используется в сочетании с nl2br( ), то последнюю следует вызывать после htmlspecialchars( ). В противном случае конструкции <br>, сгенерированные
Комментарии (0)
Скачать Java книгу»php/mysql/pdo/js
В библиотеку