RomanK
Новичок
Функция для разбивки длинных слов на короткие
Здравствуйте.
Я тут пишу форум. Не надо сейчас на меня накидываться, что я типа изобретаю велосипед. Я его пишу для собственного обучения.
Дак вот у меня вопрос:
Я хочу сделать такую функцию, как разбитие длинных слов на более короткие. То есть если юзер введет какую-нибудь чепуху длинной в пять экранов без
пробелов, то это строка разобьется на несколько коротких. Это нужно, чтобы не разъезжался дизайн.
Дак вот это я реализовал, но есть одно НО. Если в тексте будет присутствовать BBCode, ну например
, то и код (длинный, без пробелов) внутри
этих тегов будет обрабатываться этой функцией. Дак вот, нужно придумать что-либо, чтобы обрабатывался только тот текст, который вне тегов
.
Если кто-нибудь уже задавался этим вопросом, помогите пожалуйста.
Вот функция для разбивки текста:
С уважением.
Здравствуйте.
Я тут пишу форум. Не надо сейчас на меня накидываться, что я типа изобретаю велосипед. Я его пишу для собственного обучения.
Дак вот у меня вопрос:
Я хочу сделать такую функцию, как разбитие длинных слов на более короткие. То есть если юзер введет какую-нибудь чепуху длинной в пять экранов без
пробелов, то это строка разобьется на несколько коротких. Это нужно, чтобы не разъезжался дизайн.
Дак вот это я реализовал, но есть одно НО. Если в тексте будет присутствовать BBCode, ну например
Код:
тут код
этих тегов будет обрабатываться этой функцией. Дак вот, нужно придумать что-либо, чтобы обрабатывался только тот текст, который вне тегов
Код:
и
Если кто-нибудь уже задавался этим вопросом, помогите пожалуйста.
Вот функция для разбивки текста:
PHP:
<?php
function cut_words($string, $max)
{
$array_words=explode(' ', $string);
$array_words_count=count($array_words);
$string=null;
for($i=0; $i<$array_words_count; $i++)
{
$word=$array_words[$i];
if(strlen($word)>$max) $word=chunk_split($word, $max, ' ');
$string.=$word.' ';
}
$string=rtrim($string);
return $string;
}
?>