textbegrenzung

bloody

Mitglied
Hoi
also ich würd gern n newssystem basteln, indem (wie bei manchen anderen systemen auch) nur eine gewisse anzahl von Buchstaben angezeigt wird. Also wenn man einen Text von 800 Buchstaben hat, nur 300 angezeigt werden und man dann per Link die gesamten News abrufen kann. Das Newssys basiert auf ner sql datenbank.
Wie bekomme ich diese "Textbegrenzung" hin?
 
Ich habe eine viel lustigere Funktion:

PHP:
<?php
function wordsubstr($input, $len = 300) {
    $words = explode(" ",$input);
    $actlen = 0;
    for($i = 0; $i < sizeof($words); $i++) {
        if ($actlen + 1 + strlen($words[$i]) <= $len) {
            $actlen += strlen($words[$i]);
            $actlen++;
        } else {
            if ($actlen == 0) {
                $actlen += strlen($words[0]);
            }
            break;
        }
    }
    return substr($input,0,$actlen);
}
?>

$input ist der eingabetext, $len (optional) ist die Zeichenmenge nach der unterbrochen wird.
So gibt es nur ganze wörter :)

Keine Garantie das es funkt, hab ich noch nicht getestet :D
 
Zuletzt bearbeitet:
wie wärs denn mit dem codesnipet...

PHP:
$string = nl2br($string);								
$string = strip_tags($string, '<a><b><br>');
preg_match("/^(.{0,600}\S+)/s",$string,$reg);
echo $reg[1]." <a href=\"index.php?page=comments.php&nid=".$erg[id]."\">...weiter</a>";



anzuschauen auf meiner HP unter es-weisswasser

für die kurznews werden also alle nichtrelevanten htmltags gefiltert...und dann die zeichenkette auf 600 zeichen begrenzt bis zum nächsten Leerzeichen...
dann die ausgabe des strings mit angehängtem link zur kompletten news

mfG
Hammerhe@rt
 
Zuletzt bearbeitet:
Zurück