Heim  >  Artikel  >  Backend-Entwicklung  >  Die chinesische und englische String-Interception-Funktion von Thinkphp zeigt Ellipsen an

Die chinesische und englische String-Interception-Funktion von Thinkphp zeigt Ellipsen an

小云云
小云云Original
2018-03-13 13:47:332422Durchsuche

Thinkphp verfügt über eine integrierte Template-Engine, die mit Smarty vergleichbar ist, was uns großen Komfort bietet. Das Gleiche gilt für das Aufrufen von Funktionen. Sie können die Funktionen, die Sie benötigen, genau wie Smarty aufrufen, und der Beamte verfügt über einige integrierte Funktionen, die jeder aufrufen kann.

Zum Beispiel kann die Interception-String-Funktion, über die wir heute sprechen, in der Thinkphp-Template-Engine wie folgt geschrieben werden: {$vo.title|msubstr=0,5,'utf-8′, false} Was { $vo.title} betrifft, ist sicherlich jedem bekannt. Lassen Sie uns über die folgende Funktion msubstr sprechen. Was es bedeutet, ist, die Zeichenfolge $vo.title abzufangen, beginnend mit 0 Zeichen und 5 Zeichen abzufangen. Es wird UTF-8-Codierung verwendet und die Auslassungspunkte werden nach dem Abfangen standardmäßig nicht angezeigt. Wenn Sie die Auslassungspunkte anzeigen möchten, ändern Sie einfach „false“ in „true“.

Funktionserklärung:

msubstr($str, $start=0, $length, $charset=“utf-8″, $suffix=true)

  • $str: abzufangende Zeichenfolge

  • $start=0: Startposition, Standard beginnt bei 0

  • $length : Abfanglänge

  • $charset=“utf-8″: Zeichenkodierung, Standard UTF-8

  • $suffix=true: Ob es so ist Nach den abgefangenen Zeichen wird ein Auslassungszeichen angezeigt. Der Standardwert ist „true“, und „false“ wird nicht angezeigt Die Funktionsbibliothek wurde nicht geladen. Sie können Load( 'extend'); verwenden, um die Funktion zu laden. Fügen Sie sie einfach in die Aktion ein.

Nach dem Test: Die offizielle msubstr-Funktion scheint ohnehin nicht in der Lage zu sein, eine Ellipse hinzuzufügen. Ich habe im offiziellen Website-Forum eine Änderungsmethode gefunden, die nach dem Testen normal verwendet werden kann~!

Ändern Sie die msubstr-Funktion der Commonextend.PHP-Datei in den folgenden Code:

    Verwandte Empfehlungen:
  1. function msubstr($str, $start=0, $length, $charset="utf-8", $suffix=true)    
    {    
        if(function_exists("mb_substr")){    
            if($suffix)    
                 return mb_substr($str, $start, $length, $charset)."...";    
            else   
                 return mb_substr($str, $start, $length, $charset);    
        }    
        elseif(function_exists('iconv_substr')) {    
            if($suffix)    
                 return iconv_substr($str,$start,$length,$charset)."...";    
            else   
                 return iconv_substr($str,$start,$length,$charset);    
        }    
        $re['utf-8']   = "/[x01-x7f]|[xc2-xdf][x80-xbf]|[xe0-xef][x80-xbf]{2}|[xf0-xff][x80-xbf]{3}/";    
        $re['gb2312'] = "/[x01-x7f]|[xb0-xf7][xa0-xfe]/";    
        $re['gbk']    = "/[x01-x7f]|[x81-xfe][x40-xfe]/";    
        $re['big5']   = "/[x01-x7f]|[x81-xfe]([x40-x7e]|xa1-xfe])/";    
        preg_match_all($re[$charset], $str, $match);    
        $slice = join("",array_slice($match[0], $start, $length));    
        if($suffix) return $slice."…";    
        return $slice;  
    }
  2. Beispiel für die String-Interception-Funktion mb_substr in PHP

Verwendung der PHP-String-Interception-Funktion

php Chinesische und englische String-Interception-Funktion (einschließlich html)

Das obige ist der detaillierte Inhalt vonDie chinesische und englische String-Interception-Funktion von Thinkphp zeigt Ellipsen an. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn