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

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

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: замена значений текста элементами массива

Сообщения:  [1-5] 

 
 автор: Axxil   (02.02.2006 в 18:21)   письмо автору
 
   для: cheops   (02.02.2006 в 18:14)
 

Ну это поянтно :)
Я имел ввиду что скобки оставались так:
было: {user_name} стало {vasja} а надо просто vasja (без скобок)

> Скобки пропали...
Всмысле всё заработало нормально

   
 
 автор: cheops   (02.02.2006 в 18:14)   письмо автору
 
   для: Axxil   (02.02.2006 в 14:29)
 

Если в значениях массива ($value) их нет, то они не должны выводится.

   
 
 автор: Axxil   (02.02.2006 в 14:29)   письмо автору
 
   для: cheops   (02.02.2006 в 13:26)
 

Точно! Спасибо большое.
Только в вашем варианте остаются фигурные скобки при выводе $text
Когда сделал так:

<?php 
  
foreach($arr as $index => $value
  { 
    
$text str_replace("{".$index."}",$value,$text); 
  } 
?> 

Скобки пропали...
Почему? Таки не понял...

   
 
 автор: cheops   (02.02.2006 в 13:26)   письмо автору
 
   для: Axxil   (02.02.2006 в 12:52)
 

Хм... здесь помоему можно воспользоваться обычной функцией str_replace
<?php
  
foreach($arr as $index => $value)
  {
    
$text str_replace("{$index}",$value,$text);
  }
?>

   
 
 автор: Axxil   (02.02.2006 в 12:52)   письмо автору
 
 

Имеем

$text="La la la al lala lala l {user_name} sdfsdfsdf {user_mail}";
Надо заменить шаблонные вставки на значения элементов массива с ключами соответствующими значениям в фигурных скобках. т.е.

$arr=array('user_name'=>'vasja',
                     'user_mail'=>'vasja@indahouse.com');
Должно получится:

$text='La la la al lala lala l vasja sdfsdfsdf vasja@indahouse.com';


Как это красиво сделать?

   

Сообщения:  [1-5] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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