Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Замена шаблона в строке
 
 автор: tAleks   (08.07.2006 в 17:06)   письмо автору
 
 

Делаю так:


$message = 'Ваше имя: [:Имя:]';
$name = 'Вася';
//Делаем массивы для замены
$shablon = array("[:Имя:]", "[:Логин:]", "[:Код:]", "[:Пароль:]");
$zamena = array ($name, $email, $kod, $pass);
    
// Заменяем шаблон данными
$message = preg_replace($shablon, $zamena, $message);
    
echo "<pre>".$message;


А он мне выдает 'Ваше имя: [Вася]'; Не меняет квадратные скобки. Почему?
И как сделать чтобы менял?

   
 
 автор: cheops   (08.07.2006 в 21:00)   письмо автору
 
   для: tAleks   (08.07.2006 в 17:06)
 

Следует заменить
<?php
  $shablon 
= array("[:Имя:]""[:Логин:]""[:Код:]""[:Пароль:]");
?>

на
<?php
  $shablon 
= array("|[:Имя:]|""|[:Логин:]|""|[:Код:]|""|[:Пароль:]|");
?>

Так как в Perl-регулярных выражениях следует указывать границы.

   
 
 автор: Vitas   (19.07.2006 в 17:57)   письмо автору
 
   для: cheops   (08.07.2006 в 21:00)
 

В данном случае лучше использовать не preg_replace, а str_replace, и быстрее, и не надо никаких | писать. :)

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования