klippe tekst efter 100 tegn - men ikke midt i HTML
Hejjeg har fundet denne funktion her på E
function klip($tekst, $laengde = 100, $tolerance = 10) // $laengde og $tolerance kan udelades
{
$punktum = strpos(substr($tekst, $laengde-$tolerance, 2*$tolerance), "."); // position af punktum
$mellemrum = strpos(substr($tekst, $laengde-$tolerance, 2*$tolerance), " "); // position af mellemrum
$mere = "..."; // punktummer hvis mere tekst
if (strlen($tekst) <= $laengde + $tolerance) {
$slut_pos = strlen($tekst); // slutposition = slut på tekst, da denne er kortere end $laengde og $tolerance
$mere = ""; // ikke andet
} elseif ($punktum !== false) {
$slut_pos = $laengde-$tolerance+$punktum; // slutposition = punktum
} elseif ($mellemrum !== false) {
$slut_pos = $laengde-$tolerance+$mellemrum; // slutposition = mellemrum
} else {
$slut_pos = $laengde; // slutposition $laengde (ikke noget at gøre - skær ord over)
}
return substr($tekst, 0, $slut_pos) . $mere; // udskriv del + evt. punktummer
}
Jeg ved godt man kan klippe direkte i mysql osv osv.
Mit problem er at hvis en bruger har fundet på det geniale at indsætte en masse HTML koder ind i dokumentets start så får jeg et resultat der ser underligt ud - især hvis de sidste par tegn er midt i et billed tag f.eks
<img alt="" src="http://www.side.dk/billeder/ka
her mangler stien til billedet og tagget er ikke lukket ordentligt - hvad gør jeg?
