str_replace и substr_replace
str_replace и substr_replace В чем разница?
Оба зменяют одну строку другой. Чем лучше та или иная функция? А в чем же различие? Код:
<?php |
разница большая:
1. str_replace заменяет исключительно заданные подстроки (один набор символов заменить на другой) substr_replace заменяет отрезок строки (не важно, какие там символы, важна длина) на подстроку. 2. str_replace заменяет все имеющиеся совпадения (будет 10 совпадений — замена произойдет 10 раз), плюс к этому можно жестко задать количество замен (по-моему, только с пятой версии) substr_replace заменяет подстроку только один раз 3. str_replace может работать с массивами substr_replace — не может :) |
СКажите, а зачем здесь нужны в описании массива внутри каждый элемент отделять {}
Код:
<html><body> Код:
echo str_replace($from,$to, "<title>{TITLE}</title><body>{BODY}</body>"); |
kilogram,
шаблонизатор, видимо, какой-нибудь используется. |
В документации написано так:
Код:
search 1 параметр - $from - поиск- искомый элемент 2 параметр - $to - поиск - заменяемый элемент 3 параметр - а в третем парметре сама замена происходит? В 3 параметре TITLE - это название первого массива $from который заменится на его второй элемент массива from на BODY? "<title>{TITLE}</title><body>{BODY}</body>"); |
Попробовал свой пример написать, получается если я хочу найти массив и заменить на массив,как такое же происходило в примере выше, про который я прочитал в книге и спросил выше, мне нужно каждый элемент выписывать в фигурных скобках с индексами?
$t = array("Петя","Вася"); $m = array("Дуся","Муся"); echo str_replace($t,$m,"{$t[0]}{$t[1]}"); |
фигурные скобки используются для того, чтобы при поиске/замене без учета регистра, не заменились теги.
|
Часовой пояс GMT +3, время: 10:10. |