Вывести часть строки

sundance2001

Новичок
Вывести часть строки

Господа!
Прошу о помощи. Вопрос, наверное, очень простой, но, тем не менее, у меня с ним возникли проблемы.
Подскажите, пожалуйста, как можно вывести первые, например, 250 символов из строки? Это нужно для новостей, чтобы не вся новость выводилась, а только часть и ссылка на продолжение.

В поиске посмотрел, но ничего нужного не нашел. Помогите, плиз.
 

antson

Новичок
Партнер клуба
sundance2001
сам по себе substr кусает без учета пробелов и символов табуляции, так что хорошо потом найти первый разделитель
: пробел точка запятая минус с конца строки. это для плайн текста.
еще веселее когда новость в виде html .
тут варианты делать из нее голый текст выкидывая теги
или парсить новость на элементы и собирать месагу заново
проверяя длину без учетов тегов. и в заключение закрывать
теги , что остались открытыми.
 

sundance2001

Новичок
Спасибо Вам большое за ответы! Я нашел решение:

function myfragment($s,$n) {
$scan=0;
while($scan==0){
if(substr($s,$n,1)==' '){
$scan=1;
}else{
$n++;
}
}
return substr($s,0,$n) . "...";
}
 

antson

Новичок
Партнер клуба
если еще не заметил :)
функция кусает н-символов или
больше пока не найдет пробел.

Если строка строго не должна превышать
н символов, то просто смени инкрмент на декремент
$n--;
 

sundance2001

Новичок
antson
Спасибо, функция слишком проста, чтобы этого мне не заметить. Мне не принципиально важно + или - . Мне нужно приблизительно.
 
Сверху