сокращение

Discussion in 'PHP' started by dailik, 29 Jan 2009.

  1. dailik

    dailik New Member

    Joined:
    27 Oct 2008
    Messages:
    94
    Likes Received:
    2
    Reputations:
    0
    скажите как выводить с данных например из 1000 символов вывести 150 а вывожу я кодом
    PHP:
    <? echo $myrow['opisanie']; ?>
     
  2. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    PHP:

    $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>";
    }
     
    1 person likes this.
  3. dailik

    dailik New Member

    Joined:
    27 Oct 2008
    Messages:
    94
    Likes Received:
    2
    Reputations:
    0
    Pashkela
    я люблю тебя :D сколько раз ты меня спасал :)
    спасибо большое!!!
     
  4. fatalo

    fatalo Elder - Старейшина

    Joined:
    15 May 2008
    Messages:
    45
    Likes Received:
    46
    Reputations:
    5
    Pashkela,как догодался,что ему именно новости нужно выводить?Или просто пример?
     
  5. blaga

    blaga Elder - Старейшина

    Joined:
    23 Mar 2006
    Messages:
    884
    Likes Received:
    273
    Reputations:
    106
    есть функция поинтереснее.
    задаешь строку и количество символов.
    Она не обрезает на полуслове, а ищет ближайший пробел. тогда предложения более менее читабельный вид имеют.
    PHP:
    <?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);
    ?>
     
    2 people like this.
  6. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    ну так, какая разница, что именно так выводить, обычно это касается новостей, просто как пример, да. И потом не факт, что я догадался
     
  7. DDoSька

    DDoSька Elder - Старейшина

    Joined:
    5 May 2008
    Messages:
    317
    Likes Received:
    352
    Reputations:
    18
    - значит СУРБД
    есть фу-я в MySQL LEFT() ,RIGHT()
    LEFT(<строка>,<длина>)
    SELECT RIGHT('qweqwe qweeq wqeqw',7);
    LEFT-лево
    RIGHT-право
    ЗЫ:Понимаю, это тож самое что вырезать гланды через жопу автогеном, но все равно.
    ЗЫЫ:Может эт ои удобнее(немного) завсит от ситуации
     
  8. vikseriq

    vikseriq Elder - Старейшина

    Joined:
    31 Jul 2008
    Messages:
    118
    Likes Received:
    44
    Reputations:
    2
    Да, удобнее. но тут БДшкой вроде и не пахнет.
     
  9. DDoSька

    DDoSька Elder - Старейшина

    Joined:
    5 May 2008
    Messages:
    317
    Likes Received:
    352
    Reputations:
    18
    $myrow['opisanie']
    ---
    А теперь?