PHP Tutorials, PHP lernen, PHP Forum, PHP Community and more ... MyWebsolution.de!

Sidebar

Home News Tutorials Workshops Tipps Artikel Gästebuch Sitemap Pascal Landau

Suche

Members

Forum Login Registrierung

Statistik

Statistikbereich
Jetzt2
Heute224
Gestern630
Gesamt2779494

BB Code - Wörter kürzen

Autor Flitze
Klicks 184827
Rating für BB Code
  8 von 10
Bewertungen204
Stand 11.06.2013
Keywords:
BB Code Tutorial, BBCode, Text formatieren, Wörter kürzen, Spam, BBCode, langer Text

Amazon: PHP 5.3 und MySQL 5.1
Breadcrumb:
Tutorials » BB Code » BB Code - Wörter kürzen
Seite : 1 2 3 4 5 6 7 Bewerten
Article Wizard - deutscher Article Spinner

3. Wörter kürzen

[ADSENSE_LINE]
Manchmal gibt es Leute, die gezielt das Layout einer Website zerstören, indem sie z.B. einen Gästebucheintrag erstellen, der so aussehen könnte:
Code:
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW



Der Browser kann nirgendwo einen automatischen Zeilenumbruch erzeugen (IE mit seinem word-break lasse ich mal außen vor) und die ganze Seite wird unheimlich in die Breite gezogen. Um dem vorzubeugen, kann man den Text mit Hilfe der folgenden Funktion nach einer bestimmten Anzahl von Buchstaben ein Leerzeichen einfügen, so dass der Browser umbrechen kann.

PHP:
<?php
// Wörter mit mehr als 60 Zeichen werden ab dem 60. Zeichen um ein Leerzeichen ergänzt
// damit der Browser den Text umbrechen kann (, sonst wird das Layout zerstört)
$max_word_lenght = 60;
// Die Länge von Links ist größer, da sie nur im Quelltext als 'lang' erscheinen
// Links werden später noch gesondert behandelt
$max_link_lenght = 200;
// Trennzeichen
$splitter = " ";
// Text in Zeilen aufteilen, sonst würden Zeilenumbrüche (\n) nicht als Worttrennung erkannt
$lines = explode("\n", $text);
foreach(
$lines as $key_line => $line) {
    
// jede Zeile in Wörter aufteilen
    
$words = explode(" ",$line);
    
// jedes Wort prüfen
    
foreach($words as $key_word => $word) {
        
// für Links wird die maximale Länge erhöht
        
if(substr(strtolower($word), 0, 7)== 'http://' OR substr(strtolower($word), 0, 8)== 'https://' OR substr(strtolower($word), 0, 4)=='www.')
            
$max_lenght = $max_link_lenght;
        else
            
$max_lenght = $max_word_lenght;
        
$word = trim($word);
        
// BB-Code Tags entfernen, da sie nicht zur Buchstabenlänge eines Wortes zählen
        
$word = preg_replace("/\[(.*)\]/Usi", "", $word);
        if(
strlen($word)>$max_lenght) {
        
// Trennen des Wortes nach max_length Buchstaben
            
$words[$key_word] = chunk_split($words[$key_word], $max_lenght, $splitter);
            
// abziehen der Länge des Trennzeichens, dieses wird am Ende automatisch
            // noch einmal eingefügt
            
$length = strlen($words[$key_word])-strlen($splitter);
            
$words[$key_word] = substr($words[$key_word],0,$length);
        }
    }
    
// fügt die veränderten Wörter wieder zur Zeile als String zusammen
    
$lines[$key_line] = implode(" ", $words);
}
// fügt Zeilen wieder zum gesamten Text als String zusammen
$text = implode("\n", $lines);
?>


Die Kommentare erklären eigentlich so ziemlich jeden Schritt, deshalb erspare ich mir mal eine weitere Erläuterung :D
Fragen können im Forum gestellt werden ;)

Die Umwandlung des BB-Codes sollte danach erfolgen!

Zurück zur vorigen Seite:
BB Code - URL's umwandeln
Weiter zur nächsten Seite:
BB Code - Der IMG Tag

»» Zurück zum Menu

Suchmaschinenoptimierung

Suchmaschinenoptimierung (SEO - Search Engine Optimization)

Ranking

Tutorials (13)

8
7.6
6.5

Workshops (3)

8.4
7.9
6.8

Tipps (12)

5.9
4.2
3.9

Artikel (21)

7.2
5.9
5.1

RSS Feeds

Full Feed Tutorials Workshops Tipps Artikel

Twitter

Follow me on Twitter

Partner & Links


Valid HTML 4.01 Transitional
Valid CSS
nach oben

Diese Seiten unterstützen MyWebsolution:
 
© MyWebsolution.de
2006-2026