Язык программирования PHP | страница 75
>
>$greeting = array("Привет", "Привет всем!",
> "Привет, дорогая!", "Здравствуйте",
> "Здравствуйте, товарищи");
> // объект
>$search = array ("Привет","Здравствуйте");
> // значения, которые будем заменять
>$replace = "День добрый";
> // значение, которым будем заменять
>$new_greet = str_replace($search,
> $replace, $greeting); // делаем замену
>print_r($new_greet);
> //выводим полученный массив
>?>
Получим:
>Array (
>[0] => День добрый
>[1] => День добрый всем!
>[2] => День добрый, дорогая!
>[3] => День добрый
>[4] => День добрый, товарищи
>)
Функция str_replace() чувствительна к регистру, но существует ее регистронезависимый аналог – функция str_ireplace(). Однако эта функция поддерживается не во всех версиях PHP.
Еще один пример использования функции str_replace() – обработка шаблонов.
Обратимся в очередной раз к описанию какого-либо документа, например статьи. Много раз мы уже создавали форму для ввода подобного описания и даже отображали данные, введенные пользователем в такого рода форму. Но как отображать эти данные, мы описывали непосредственно в коде нашей программы. Теперь мы хотим, чтобы способ отображения данных задавал сам пользователь. Для этого добавим в нашу форму еще один элемент для ввода шаблона.
>
Введите описание статьи
>
>
>
Название > type=text name=title >
>
Краткое содержание > type=text name=description >
>
Автор > type=text name=author >
>
Дата публикации > type=text name=published >
>
Шаблон документа >
>
>
Однако просто поля для ввода шаблона недостаточно. Один человек введет в него одно, другой – другое. Нужно договориться о том, как создавать шаблоны, что можно в них использовать, т.е. нужно придумать язык шаблонов. Например, мы договариваемся, что при создании шаблона можно задействовать любые html-теги, а набор спецсимволов вида определяет значение элемента с именем имя_элемента. Далее, как обрабатывать такого рода шаблоны? Можно использовать функцию str_replace():
>
>$tmpl = $_GET["shablon"];
>/* шаблон, введенный пользователем.
>Например, это может быть такая строка:
>"
>size=-1>
>align=right>