Navigation
 Startseite
 Fachbücher
 Forum
 Webmaster News
 Script Newsletter
 Kontakt
 Script Installation
 Php
 Php Tutorials
 Impressum

Community-Bereich
 kostenlos Registrieren
 Anmelden
 Benutzerliste

Script Datenbank
 Script Archiv
 Script Top 20
 Screenshots
 Testberichte

Suche
 
Script Seite

Unsere Php Scripts
 Counter Script
 Umfrage Script
 Bilder Upload Script
 Terminverwaltung
 Simple PHP Forum
 RSS Grabber

Script Mods
 phpBB Adsense Mode

Tools und Generatoren
 .htpasswd Generator
 md5 Generator
 base64 Generator
 ICQ Generator
 Colorpicker
 Unix timestamp Tool
 TLD Liste
 Webkatalog Verzeichnis

Partner
Sprüche Treff

Artfiles.de
Bietet Serviceorientierte Internetdienstleistungen...
http://www.Artfiles.de
speicherzentrum.d...
Bei den Anbieter bekommt man Webspace, Domains und...
http://www.speicherzentrum.de
 
 
 

Ein String kürzen ohne das letzte Wort abzutrennen

Sie befinden sich: Home > Php Tutorial > Ein String kürzen ohne das...

Ein String kürzen ohne das letzte Wort abzutrennen



Eintrag am:  24.01.2010
Hits / Besucher:  7929
Sprache: Deutsch
Kategorie:  Einsteiger Tutorials...
Tutorial Art:  eigenes
 

Beschreibung


Wer kennt das nicht, man möchte einen Text bei einer Ausgabe entsprechend für eine Vorschau kürzen. In PHP gibt es dazu die Funktion substr() womit man einen Text kürzen kann. Leider hat man das Problem, dass der Text immer nach der angegebenen Anzahl an Zeichen abgeschnitten wird. Dies möchte man natürlich für den Betrachter schöner gestalten und daher möchte ich euch an dieser Stelle erklären, wie man in Verbindung mit der PHP Funktion substr() und preg_replace() entsprechend einen Text kürzen kann, ohne ein Wort abzutrennen.

In diesen PHP Tutorial verwende ich eine selbstdefinierte PHP Funktion string_kuerzen() um diese beiden PHP-Funktionen substr() und preg_replace() zu einer PHP Funktion zusammenzufassen. Im ersten Abschnitt gehe ich auf die selbstdefinierte Funktion string_kuerzen() ein, und im zweiten Abschnitt wird erklärt wie man mit dieser PHP-Funktion einen Text kürzen kann. Also kommen wir zu der Funktion.

Code der PHP-Funktion:

<?php
    
/*
    * Created on 24.01.2010 by Nico Schubert
    */
    
function string_kuerzen ($string,
        
$string_max_laenge 150) {
        
/**
        * Prüfen ob in der Variable $string ein Wert
            definiert wurde.
        */
        
if (empty($string) == true) {
            
/**
            * Funktion abbrechen und eine
                Fehlermeldung zurückgeben.
            */
            
return('Es wurde kein String an die
                Function: string_kuerzen() übergeben!'
);
        } else {
            
/**
            * Die Länge des Strings in der Variable
                $string mit der PHP Funktion strlen()
                ermitteln.
            */
            
$string_laenge strlen($string);
            
/**
            * Die gespeicherte Länge in der Variable
                $string_laenge mit der maximalen
                Länge in Verbindung einer IF
                Anweisung prüfen. Wenn die Länge in
                der Variable $string_laenge größer
                als wie die maximale Länge ist, wird
                der String in der Variable $string
                nicht berührt und unverändert
                zurückgegeben.
            */
            
if ($string_laenge >= $string_max_laenge) {
                
/**
                * Den Text kürzen in der Variable
                    $string auf die Länge, in der
                    Variable $string_max_laenge
                    steht. Anschließend mit
                    preg_replace() den gesamten Text
                    nach den letzten Leerzeichen
                    entfernen.
                */
                
$string preg_replace("/[^ ]*$/"'',
                    
substr($string0,
                    
$string_max_laenge));
                
/**
                * Zu guter letzt hängen wir an den
                    Text in der Variable $string ein
                    entsprechendes "..." an, damit
                    der Text kenntlich gemacht wird,
                    dass dieser gekürzt wurde.
                */
                
$string .= ' ...';
            }
            
/**
            * Rückgabe der Variable $string und
                Beendigung der PHP function.
            */
            
return ($string);
        }
    }
?>

Nun haben wir die PHP-Funktion, um diese nun zu verwenden müssen wir entsprechend der PHP Funktion verschiedenen Variablen übergeben. Hierzu habe ich für euch ein Beispiel erstellt.

Beispiel für die Verwendung der PHP-Funktion:

<?php
    
/**
    * Beispiel für die Verwendung der selbst
        definierten PHP function.
    */
    /**
    * Definieren des Textes in der Variable $text, den
        wir kürzen möchten.
    */
    
$text 'Das ist ein Demo Text, dieser Text dient
        zur Demonstration.'
;
    
/**
    * Maximale Länge, die der Text haben darf.
    */
    
$maximale_textlaenge '50';
    
/**
    * Übergabe der Variablen an die selbst definierten
        PHP function.
    */
    
$rueckgabe string_kuerzen($text,
        
$maximale_textlaenge);
    
/*
    * Ausgabe des zurückgegebenen Textes.
    */
    
echo $rueckgabe;
?>

Die Ausgabe wurde folgendermaßen aussehen:

Das ist ein Demo Text, dieser Text dient zur ...

Diesen selbstdefinierte PHP-Funktion string_kuerzen() unterstützt ausschließlich Text, wenn man vorher den HTML Code entfernen möchte, empfiehlt es sich die PHP-Funktion strip_tags() zu verwenden.

Weiterführende Erklärungen zu den verwendeten PHP-Funktionen:

echo - Text ausgeben in PHP.
Php Function - Allgemeine Erklärung was eine PHP Function ist und wie man diese verwenden kann.
IF Anweisung - Erklärung, der Verwendung einer IF Anweisung.
substr() - Zeichenkette nach einer bestimmten Länge kürzen.
strlen() - Länge einer Zeichenkette ermitteln.

 

Tags


 

Verlink uns, wenn Dir das Tutorial gefallen hat:
Artikel hinzufügen bei: