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

Форум PHP

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

 

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

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

тема: оптимизация кода замены или иное решение проблемы
 
 автор: aetern   (09.01.2009 в 15:49)   письмо автору
 
 

Дело в том, что в БД MySQL лежит текст с тегами <br />. Этот текст выводится с функцией substring(text,1,50) as text, однако иногда 50-тый символ "режет" тег <br /> и получается ошибка.
Вопрос:
как убрать зарезанный тег <br /> (т.е. '<', '<b', '<br', '<br ', в том числе и сам '<br />'

Вариант типа:

$text = str_replace('<br />', '', $text); 
$text = str_replace('<br /', '', $text);  
$text = str_replace('<br ', '', $text); 
$text = str_replace('<br', '', $text);  
$text = str_replace('<b', '', $text);   
$text = str_replace('<', '', $text);

Не интересен.

Предполагаю, что есть решение путем регулярных выражений, но уж болно плохо в них разбираюсь.
А может еще как-то это можно решить?

  Ответить  
 
 автор: Axxil   (09.01.2009 в 16:23)   письмо автору
 
   для: aetern   (09.01.2009 в 15:49)
 

str_replace умеет с массивами работать.
$text = str_replace(array('<br />','<br /' и т.д.),'',$text);

  Ответить  
 
 автор: BinLaden   (09.01.2009 в 16:27)   письмо автору
 
   для: aetern   (09.01.2009 в 15:49)
 

Отсюда вывод: в БД не должно быть тегов.

  Ответить  
Rambler's Top100
вверх

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