Autor Zpráva
rudasmolinec
Profil *
Zdravim mohl by mi nekdo prosim poradit jak by se dalo omezit vypisovani textu z databaze jenom na urcity pocet znaku a tak aby vypis nekoncil nekde uprostred slova?
Alphard
Profil
Nejčastější potíže s PHP (FAQ) » Zkrácení článku pro výpis perexu
rudasmolinec
Profil *
Alphard:
zkusil jsem to v tomto tvaru a vypisuje mi to jenom prvnich 17 znaku v cem je problem?


$qqq = mysql_query("SELECT * FROM $DB2.help WHERE `under`='".$notf."'");
while ($row = mysql_fetch_object($qqq)) { $ltxt="$row->content";
}
$stxt = substr("$ltxt", 0, 17)."…";

echo"$stxt";
Alphard
Profil
rudasmolinec:
v cem je problem?
To také nevím, kde je problém. Přesně to ten kód má dělat.

Tady je případně upravená funkce, která po oříznutí zkusí najít nejbližší mezeru a pokud je dostatečně blízko, prodlouží vrácený text až k ní.
/**
 * Zkrátí text na délku $limit. Pokud je v následujících
 * $extend znacích nalezena mezera, je k ní text prodloužen.
 */
function helperTruncate($str, $limit, $extend = 8) {
  $index = strpos($str, ' ', $limit);
  $length = ($index >= $limit && $index <= $limit + $extend) ? $index : $limit;
  return substr($str, 0, $length);
}

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: