Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.06.2016, 21:50   #1
Predator199
Форумчанин
 
Аватар для Predator199
 
Регистрация: 26.01.2012
Сообщений: 648
По умолчанию Составить алгоритм, обрезать html

Помогите составить алгоритм, необходимо обрезать строчку в которой содержится html.

Необходимо обрезать строчку так, чтобы верстка не была испорчена.
Взять только текст в расчет длины строчки(без учета html тегов), обрезать. И на выходи толи вставить, толи сверить с изначальным текстом. В общем как, всю голову сломал...?
Predator199 вне форума Ответить с цитированием
Старый 08.06.2016, 22:15   #2
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Удалить htmlstrip_tags.
Обрезать текст по длине – substr, etc...
Andkorol вне форума Ответить с цитированием
Старый 08.06.2016, 22:34   #3
Predator199
Форумчанин
 
Аватар для Predator199
 
Регистрация: 26.01.2012
Сообщений: 648
По умолчанию

С этим понятно, удалили html и обрезали. Далее, как вернуть html?
То есть на выходе как раз получится обрезанный текст в шаблоне html, как?

Обрезать вместе с html - не выход, во первых теги будут открыты, во вторых теги в расчет длины строчки возьмутся...

Последний раз редактировалось Predator199; 08.06.2016 в 22:49.
Predator199 вне форума Ответить с цитированием
Старый 08.06.2016, 23:05   #4
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от Predator199 Посмотреть сообщение
С этим понятно, удалили html и обрезали. Далее, как вернуть html?
То есть на выходе как раз получится обрезанный текст в шаблоне html, как?
Обрезать вместе с html - не выход, во первых теги будут открыты, во вторых теги в расчет длины строчки возьмутся...
Ничего тебе непонятно.
Первый день в php?
Мануал для тебя недоступен?
На выходе strip_tags вовращает экземпляр строки без тегов – а не обрезанный оригинал строки.
Давай ты просто будешь читать мануал и пробовать предложенные варианты – а не тупо нести всякую чепуху в ответ?
Andkorol вне форума Ответить с цитированием
Старый 09.06.2016, 08:03   #5
Predator199
Форумчанин
 
Аватар для Predator199
 
Регистрация: 26.01.2012
Сообщений: 648
По умолчанию

Цитата:
Сообщение от Andkorol Посмотреть сообщение
Ничего тебе непонятно.
Первый день в php?
Мануал для тебя недоступен?
На выходе strip_tags вовращает экземпляр строки без тегов – а не обрезанный оригинал строки.
Давай ты просто будешь читать мануал и пробовать предложенные варианты – а не тупо нести всякую чепуху в ответ?
На выходе strip_tags вовращает экземпляр строки без тегов – а не обрезанный оригинал строки.

Знаю, вопрос...

Как получить обрезанный оригинал строки? Так, чтобы все открытые теги при обрезании были закрыты...??
Predator199 вне форума Ответить с цитированием
Старый 09.06.2016, 09:27   #6
TaLadno
Форумчанин
 
Регистрация: 03.06.2015
Сообщений: 393
По умолчанию

Predator199, а слабо выложить пример "ДО" обработки и "ПОСЛЕ"?
т.е.:
- на входе имеем это
- на выходе получаем то
Вы там держитесь.
TaLadno вне форума Ответить с цитированием
Старый 09.06.2016, 09:32   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Andkorol, я, кажется, понял, что нужно TC.

У него есть строка с тегами, оформленная. Он хочет из неё получить начало строки (конец обрезать), но так, чтобы все теги, оставшиеся в начале строки имели закрывающие теги.

p.s. что-то мне подсказывает, что в общем случае эта задача должна решаться через вёрстку. на крайний случай - выкидывать всё оформление и/или вставлять новое.

Predator199, давайте добавим конкретики в ваш вопрос.
Придумайте тестовое задание и покажите, что есть и что надо получить в итоге.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 09.06.2016, 09:57   #8
Predator199
Форумчанин
 
Аватар для Predator199
 
Регистрация: 26.01.2012
Сообщений: 648
По умолчанию

Исходник
Код:
<p>текст</p>
<p>текст</p>
<p>текст 
      <div><p>текст</p></div>
</p>
Необходимо обрезать строку до 17 символов, как получить на выходе следующее
Код:
<p>текст</p>
<p>текст</p>
<p>текст 
      <div><p>те</p></div>
</p>
или до 10
Код:
<p>текст</p>
<p>текст</p>
Predator199 вне форума Ответить с цитированием
Старый 09.06.2016, 11:39   #9
CodeNOT
Форумчанин
 
Аватар для CodeNOT
 
Регистрация: 08.11.2010
Сообщений: 593
По умолчанию

domDocument тебе в помощь, все текстовые строки будут содержаться в textNode, так что там без проблем построить сможете дерево и с ним поработать, документация по нему весьма не плохая на основном сайте: http://php.net/manual/ru/class.domdocument.php
CodeNOT вне форума Ответить с цитированием
Старый 09.06.2016, 13:06   #10
Predator199
Форумчанин
 
Аватар для Predator199
 
Регистрация: 26.01.2012
Сообщений: 648
По умолчанию

domDocument, можно пример, как это работает?

Найти ссылки или удалить скрипты, это понят. А для моего случая как это применить?
Predator199 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
составить алгоритм Alexander2810 Помощь студентам 1 02.04.2014 13:05
составить алгоритм dearkato Помощь студентам 5 23.10.2011 19:49
Составить алгоритм Maxim_aka47 Помощь студентам 4 12.10.2011 19:08
составить алгоритм michal3003 Помощь студентам 0 19.05.2011 17:16
Составить алгоритм Vikenty Помощь студентам 3 27.05.2010 22:32