2016-07-01 15 views
0

ändern großen Text "Hereisthelargetextbreakwithphp" auf "Hereisthelarge ..."Wie ändere ich einen großen Text "Hierherelargetextbreakwithphp" zu "Hereisthelarge ..."?

$string = "Hereisthelargetextbreakwithphp"; 
$string = strip_tags($string); 
if (strlen($string) > 21) { 
    $stringCut = substr($string, 0, 21); 
    echo $string = substr($stringCut, 0, strrpos($stringCut, ' ')).'... '; 
}else{ 
    echo $string; 
} 

aber seine noch für sie tätig sind, diesen Text ersetzen Ganzes "..."

+0

https://gist.github.com/d inynamicguy/3272470 –

+0

Mögliches Duplikat von [Add ... if string ist zu lang PHP] (http://stackoverflow.com/questions/11434091/add-if-string-is-too-long-php) –

Antwort

0

Wenn kein Platz mehr ist, strrpos kehrt false, die in der substr-Funktion auf Null gesetzt wird. Das führt dazu, dass substr Rückkehr leeren String

if (strlen($string) > 21) { 
    $stringCut = substr($string, 0, 21); 
    // If threre is no space in string take it all 
    $i = (($i = strrpos($stringCut, ' ')) === false) ? strlen($stringCut) : $i; 
    echo $string = substr($stringCut, 0, $i).'... '; 
} 
0

Try this:

$string = strip_tags("Hereisthelargetextbreakwithphp"); 
echo (strlen($string) > 14) ? substr($string, 0, 14).'... ' : $string; 
0

Keine Notwendigkeit lesen können benutzerdefinierte Funktion machen Da Sie Codeigniter verwenden, können Sie den Texthelfer direkt verwenden,

laden die Helfer zunächst

$this->load->helper('text'); 

Dann character_limiter Funktion verwenden, die bereits eingebaut ist,

$string = character_limiter($stringCut, 21); 

Und wenn Sie wollen ... nach Zeichenfolge hinzuzufügen,

$string = character_limiter($stringCut, 21) . '...'; 

Referenz: Codeigniter Text Helper

Verwandte Themen