помогите с формированием title (регулярка)

Статус
В этой теме нельзя размещать новые ответы.

Xansen

Постоялец
Регистрация
30 Мар 2006
Сообщения
435
Реакции
124
Нужно чтобы для определенных страниц, генерируемых одним шаблоном, title был один для других другой.

написал такое чудо:
if ($_SERVER['REQUEST_URI'] == '/catalog.html') {$title = 'Каталог организаций города';}
elseif ($_SERVER['REQUEST_URI'] == '/catalog^.{2,}$.html') {$title = 'Каталог заведений города';}

во втором случае регулярка почему то не работает. Что я не так сделал? Задумка была чтобы для всех файлов вида catalog**.html заменялся title, где * - любой символ.

Что делаю не так?
 
Регулярный выражения работают только в специальных функциях.
Все они перечислены в разделе Обработка текста мануала по PHP.
Вот некоторые из них, preg_grep, preg_match_all, preg_match, preg_replace.
Попробуйте тот же код переписать с использованием функции preg_match(:(
PHP:
preg_match — Выполняет проверку на соответствие регулярному выражению
Описание
mixed preg_match ( string $pattern, string $subject [, array $&matches [, int $flags [, int $offset]]] )
Ищет в заданном тексте subject совпадения с шаблоном pattern 
В случае, если дополнительный параметр matches указан, он будет заполнен результатами поиска. Элемент $matches[0] будет содержать часть строки, соответствующую вхождению всего шаблона, $matches[1] - часть строки, соответствующую первой подмаске, и так далее.
 
Вроде так
PHP:
if ($_SERVER['REQUEST_URI'] == '/catalog.html') {
$title = 'Каталог организаций города';
} elseif (preg_match("/^\/catalog[a-zA-Z0-9-_]{2,}\.html$/", $_SERVER['REQUEST_URI'])) {
$title = 'Каталог заведений города';
}
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху