Perex článku rovnou z MySQL

/ Blog / MYSQL / Perex článku rovnou z MySQL
Článek je už starý a informace v něm nemusí být relevantní, mohou být zastaralé či dokonce již neplatné. Články nepíši, informace si poznamenávám jinam, sledovat mě můžete na Githubu, Medium či jiných "IT" síťích. 👋 V případě dotazu mi napište na e-mail či telegram (sekce kontakt).

Publikováno v sekci MYSQL v 14. 5. 2007 - 22:19

Pokud potřebujeme z článku vypsat určitý počet znaků, většina lidí si jednodušše uřízne požadovaný počet znaků pomocí funkce **substr()**

To bývá kolikrát neštastné už tím, že nám může rozpůlit slovo a tento efekt nevypadá pěkně. Proto si můžeme napsat vlastní funkci Perex(), která nám chytře vrátí požadovanou délku znaků.

 1: <?php function Perex($text, $length = 60, $ending = "...")
 2: {
 3: if (strlen($text) <= $length)
 4: {
 5: $text = $text;
 6: } </p>
 7: <pre><code>else
 8:  {
 9:     $text  = substr($text, 0, $length);
10:     $pos   = strrpos($text, " ");
11:     $text  = substr($text, 0, $pos);
12:     $text .= $ending;
13:  }
14: 
15: return $text;</code></pre>
16: <p>}
17: ??&gt;
Ale i tento způsob ma nevýhodu. Musíme z databáze získat celý text, který teprve poté zkrátíme. A proto pokud nechceme konkrétní počet znaků, a spokojíme se s konkrétním počtem slov, můžeme perex získat rovnou z datábáze následujícím dotazem

1: SELECT SUBSTRING_INDEX( perex, ' ', 3 ) AS perex FROM clanky

Kategorie

  • Osobní názory - 0x
  • PHP - 9x
  • MYSQL - 4x
  • CSS - 7x
  • jQuery - 3x
  • Sociální síť - 1x
  • Nette - 5x
  • Tipy & triky - 3x
  • Twitter Bootstrap - 1x
  • Týdenní tipy a novinky - 4x
  • SCSS - 1x
  • GIT - 1x
  • Gulp - 1x

  • Komentáře (6x)

    #1 reagovat Majkee:
    Díky, to se hodí!
    #2 reagovat Manix:
    Ahoj, mohl by jsi prosim te uvest konkterni priklad jak ten perex vypsat z databaze. Asi hodinu jsem se o to pokousel, ale neslo mi to. Diky moc
    #3 reagovat Manix:
    Tak dobry, jeste naposledy jsem to zkusil a vyslo to :))
    #4 reagovat Roman Janko:
    Tak to jsem fakt rád :-)
    #5 reagovat Lukáš:
    A jak to dopadne, pokud text obsahuje html tagy?
    [5] Lukáš Blbě, může se stát, že to ořízne s tagem .. na to je lepší použít http://php.vrana.cz/zkraceni-textu-s-xhtml-znackami.php

    Vložit nový komentář


    • na jiné komentáře odkazujte pomocí odkazu reagovat
    • vaše IP adresa bude zaznamenána
    • používají se gravatary
    • můžeme si tykat
    • HTML tagy vypnuty. PHP kód se také neprovede. Pokud potřebuju přiložit ukázku vašeho kódu, použijete službu pastebin
    • vulgární, rasistické či jinak nepřípustné komentáře budou smazány