Stytting á texta

Skrifað af
Maggi Trymbill þann
26. janúar 2007 - 10:44
Fjöldi lestra: 1386
Einföld function til þess að stytta texta án þess að styttingin komi inn í orði. Bjó þetta til upphaflega fyrir blogg en nota þetta núna fyrir Vefkerfið v1.0 sem er byggt á PHP / Mysql.
Vessogú!
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 |
|
<?php
// Stytting á texta
function ShortenText($text,$chars="25") {
// Fjarlægja html tög og finna lengdina á textanum
$text = strip_tags($text);
$length = strlen($text);
// Búa til bil fyrir aftan textan
$text = $text." ";
// Stytta textan niður
$text = substr($text,0,$chars);
// Finna síðasta bilið í textanum þannig að styttingin fari ekki inní orð
$text = substr($text,0,strrpos($text,' '));
// Ef að lengdin á textanum er minni en 'chars' að þá þarf ekki að setja '...' fyrir aftan
if($length > $chars) { $text = $text."..."; }
// Skrifa út textan
return $text;
}
?>
|
Væri ekki betra að nota strip_tags áður en lengdin er fundin út svo textinn sé ekki styttur þegar þess myndi ekki þurfa? Auk þess er óþarfi að hafa það í ferlinu þegar þú tekur það út hvort sem er.
1. desember 2007 - 19:39#2 - Gauihttp://www.gaui.is
Maggi, ég breytti kóðanum í uppfærða kóðann sem þú settir í athugasemdirnar.