Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: заменить символы в строке

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
lixana
Отправлено: 27 Января, 2018 - 16:42:13
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Янв. 2018  


Помог: 0 раз(а)




помогите разобраться.
нужно в заголовках (<h3>) абзацев текста заменить символы '&' в '&amp;'
про htmlspecialchars знаю, но она преобразует во всем тексте.
 
 Top
Строитель Модератор
Отправлено: 27 Января, 2018 - 16:54:08
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


Помог: 73 раз(а)




lixana, опубликуйте пример строки, в которой надо произвести замену.
 
 Top
lixana
Отправлено: 27 Января, 2018 - 16:58:08
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Янв. 2018  


Помог: 0 раз(а)




Строитель пишет:
lixana, опубликуйте пример строки, в которой надо произвести замену.


CODE (html):
скопировать код в буфер обмена
  1.  <h3>Строка заголовка & строка</h3>
 
 Top
Строитель Модератор
Отправлено: 27 Января, 2018 - 17:11:04
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


Помог: 73 раз(а)




lixana
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $str = '<h3>Строка заголовка & строка</h3>';
  4.  
  5.      '~(<h3>)(.+?)(</h3>)~',
  6.      function ($m) {
  7.         return $m[1] . str_replace('&', '&amp;', $m[2]) . $m[3];
  8.      },
  9.      $str
  10. );
  11.  
  12. // Результат: <h3>Строка заголовка & строка</h3>

(Добавление)
lixana, местный парсер съедает & amp ; поэтому уточняю, его надо передать 2-ым параметром в str_replace()


Отредактировано модератором: Мелкий, 27 Января, 2018 - 17:19:11
можно удвоить амперсанд
 
 Top
lixana
Отправлено: 27 Января, 2018 - 17:20:54
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Янв. 2018  


Помог: 0 раз(а)




Строитель пишет:
lixana
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $str = '<h3>Строка заголовка & строка</h3>';
  4.  
  5.      '~(<h3>)(.+?)(</h3>)~',
  6.      function ($m) {
  7.         // Местный парсер съедает & amp ; поэтому уточняю,
  8.         // его надо передать 2-ым параметром в str_replace()
  9.         return $m[1] . str_replace('&', '&amp;', $m[2]) . $m[3];
  10.      },
  11.      $str
  12. );
  13.  
  14. // Результат: <h3>Строка заголовка & строка</h3>

(Добавление)
lixana, местный парсер съедает & amp ; поэтому уточняю, его надо передать 2-ым параметром в str_replace()


спасибо
 
 Top
Строитель Модератор
Отправлено: 27 Января, 2018 - 17:30:25
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


Помог: 73 раз(а)




Мелкий пишет:
можно удвоить амперсанд
О, благодарю за подсказку Закатив глазки
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB