Använder koden nedan för att begränsa nyheterna till max 150 tecken. Går det på något sätt att göra så den går tex 140 tecken och sen bryter vid nästa mellanslag för att inte bryta i ett ord?
echo substr($r['content'], 0, 150)."..." ;
5 svar · 449 visningar · startad av dahlgren
Använder koden nedan för att begränsa nyheterna till max 150 tecken. Går det på något sätt att göra så den går tex 140 tecken och sen bryter vid nästa mellanslag för att inte bryta i ett ord?
echo substr($r['content'], 0, 150)."..." ;
Otestat
function shortString($string, $num) {
return preg_replace ("/([^\s]+)$/", "", substr ($string, 0, $num));
}
echo shortString($r['content']);
echo(substr($r['content'], 0, strrpos(substr($r['content'], 0, 150), " "));
Tack för hjälpen. Melea: Din kod fungerar fast bara första gången allt ligger i en loop så det kan behövas skriva ut saker flera gånger.
dahlgren skrev:
[...] Melea: Din kod fungerar fast bara första gången allt ligger i en loop så det kan behövas skriva ut saker flera gånger.
Hm, skumt!
Hur skriver du ut loopen? Detta borde funka.
function shortString($string, $num) {
return preg_replace ("/([^\s]+)$/", "", substr ($string, 0, $num));
}
while($r = mysql_fetch_assoc($sql)) {
echo shortString($r['content'], 55);
}
Nu fick jag koden att fungera. Hade visst råkade lägga functionen i loopen också.