Pull to refresh

Comments 15

Хабрапарсер явно скушал реги.
Цель addslashes/stripslashes абсолютно не ясна.
Не вполне понятно зачем array_unique, ситуация при таком раскладе у Вас будет нормальной, хотя на самом деле на нормальную не похожа.
*ситуация при таком раскладе
<p><p>что-то</p>
Согласен. Перемудрил. Исправил.
Регулярные выражения все еще отсутствуют. Только в одном месте, с конкатенацией, не срезалось. Кривой парсер.

"#put all opened tags into an array"
«preg_match_all(»##iU",$html,$result);"
Это не нужно. Анонс должен писать человек. Если программа будет обрезать по фиксированному числу символов, то получается ерунда.
Поддерживаю. Тоже в своё время парились над этой задачей, но пришли к выводу, что надо давать админу самому писать анонс. Если админ сайта туповат — скопирует, если умён — напишет.

Кстати, а зачем в анонсе сохранять теги? :) Можно ведь просто резать.
спасибо за ответ. На хабре для написания статьи не предлагается отдельное окно для анонса. Та-же история с вордпресом и т.д. Удобно, когда можно вставить в текст тег <habracut> и дело с концом. Анонс на своем месте, текст на своем. Мухи отдельно от котлет. И ничего отдельно писать не нужно.
Это уже другая история. У вас в тексте статьи (не считая кода) ничего про это нет. Напишите нормально, какую задачу вы решаете.
<?=mb_substr( strip_tags($source), 0, $symbols_count, 'UTF-8');?>...
Согласен. Удобно. Только текст может быть обрезан как в середине слова, так и в конце предложения, после знака препинания, до или после пробела. Где угодно. Плюс я анонс могу оформить не только картинкой или цветом. Плюс пользователь может анонс оформить в удобном ему месте, а не в месте разрыва 800 символов. И хорошо бы чтобы у пользователя был полноценный текстовый редактор а не «обрезатор».
if(count($closedtags) == $len_opened){
плохо, можно открыть левым тегом и закрыть левым, а кол-во совпадет
Была такая же проблема, но так ее и не решил. Просто прикрутил Markdown и сделал тег [cut] и [cut=Читать далее] (использовал строковые функции — с регулярками как-то не получилось). Сначала markdown-текст режется, а после — парсится этим самым Markdown. Если где-то криво отрежется — Markdown просто не распарсит порезанный «тег». Решение не очень, т.к. обычный HTML недоступен, а Markdown может не все. Но заморачиваться с незакрытыми тегами — нет уж, спасибо.
Sign up to leave a comment.

Articles