PDA

Просмотр полной версии : сокращение


dailik
29.01.2009, 20:39
скажите как выводить с данных например из 1000 символов вывести 150 а вывожу я кодом
<? echo $myrow['opisanie']; ?>

Pashkela
29.01.2009, 20:44
$a =$myrow['opisanie'];
if (strlen($a)<=150) echo $a;
else
{
echo substr($a,0,150) . "...\n";
echo "<A target='_blank' href='http://sait/novost_celikom.html'><b>Новость целиком</b></a>";
}

dailik
29.01.2009, 20:48
Pashkela
я люблю тебя :D сколько раз ты меня спасал :)
спасибо большое!!!

fatalo
29.01.2009, 21:02
Pashkela,как догодался,что ему именно новости нужно выводить?Или просто пример?

blaga
29.01.2009, 21:18
есть функция поинтереснее.
задаешь строку и количество символов.
Она не обрезает на полуслове, а ищет ближайший пробел. тогда предложения более менее читабельный вид имеют.

<?php
function crop($str,$len)
{
if(strlen($str)>$len)
{
$str=substr($str,0,$len);
$point=strrpos($str,".");
if($point!=0)
{
$str=substr($str,0,$point);
$str.="..";
}
else
{
$str=substr($str,0,$len);
$space=strrpos($str," ");
$str=substr($str,0,$space);
$str.="...";
}
}
return $str;
}
echo crop("Здесь может быть ваша реклама", 20);
?>

Pashkela
29.01.2009, 22:00
Pashkela,как догодался,что ему именно новости нужно выводить?Или просто пример?

ну так, какая разница, что именно так выводить, обычно это касается новостей, просто как пример, да. И потом не факт, что я догадался

DDoSька
29.01.2009, 22:21
$myrow['opisanie']
- значит СУРБД
есть фу-я в MySQL LEFT() ,RIGHT()
LEFT(<строка>,<длина>)
SELECT RIGHT('qweqwe qweeq wqeqw',7);
LEFT-лево
RIGHT-право
ЗЫ:Понимаю, это тож самое что вырезать гланды через жопу автогеном, но все равно.
ЗЫЫ:Может эт ои удобнее(немного) завсит от ситуации

vikseriq
29.01.2009, 22:33
Да, удобнее. но тут БДшкой вроде и не пахнет.

DDoSька
29.01.2009, 22:42
Да, удобнее. но тут БДшкой вроде и не пахнет.
$myrow['opisanie']
---
А теперь?