|
|
|
| Здравствуйте.
Подскажите, пожалуйста, как красиво обрезать текст?
Например, в нем 5000 символов. Надо вывести, скажем, 800 знаков, но таким образом, чтобы он не обрезался на половине слова..
Я, например, делаю так:
// короткое описание
$message_len = strlen($text_blogs);
if ($message_len>1001) {
for ($j=0; $j<1000; $j++)
{
if (!isset($m)) continue;
$message_short=substr_replace ($text_blogs , "", $j);
$probel=substr ($message_short, $j-1);
if ( ($probel==".") OR ($probel=="!") OR ($probel=="?") ) {$m=$j; }
}
$text_blogs= $message_short."...";
$text_blogs=nl2br($text_blogs);
}
// короткое описание
|
$text_blogs - в этой переменной - длинный текст.. Подскажите, как поправить этот скрипт? | |
|
|
|
|
|
|
|
для: Jaroslav
(12.07.2009 в 18:58)
| | Вопрос снят.. сделал....
$pos_find=strrpos($text_blogs, " ");
$pos_find1= substr($text_blogs, $pos_find);
$text_blogs = str_replace("$pos_find1","", $text_blogs);
:) | |
|
|
|
|
|
|
|
для: Jaroslav
(12.07.2009 в 18:58)
| |
<?
$s = "Иногда бывает удобно иметь переменными имена переменных.
То есть, имя переменной, которое может быть определено и изменено
динамически. Обычная переменная определяется примерно таким выражением.";
$p = 30;
echo substr($s, 0, $p+(strpos($s, " ", $p)-$p));
|
| |
|
|
|
|
|
|
|
для: sim5
(12.07.2009 в 19:22)
| | а зачем последнее "-$p"
<?php
$partSize = 10;//sumbols
$longString = 'some looooooong string with spaces';
$longString = substr($longString,0,strpos($longString,' ',$partSize));
echo $longString;
?>
|
| |
|
|
|
|
|
|
|
для: MIchail1982
(12.07.2009 в 19:26)
| | Спасибо! | |
|
|
|