Abfangmethode: 1. Verwenden Sie die Funktion substr(), die Syntax „substr(string, die Startposition der Zeichenfolge abfangen, die Länge der Zeichenfolge abfangen)“ 2. Verwenden Sie die Funktion mb_substr(), die Syntax „; mb_substr(string) , Startposition des Strings abfangen, Länge des Strings abfangen, Zeichenkodierung)".
Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 7.1, DELL G3-Computer
Wenn Sie in PHP eine Zeichenfolge ab einer bestimmten Position abfangen möchten, können Sie substr() und verwenden mb_substr()-Funktionen.
Sowohl die Funktionen substr() als auch mb_substr() können Zeichenfolgen abfangen. Der einzige Unterschied zwischen ihnen besteht in der Verarbeitung chinesischer Zeichen. Werfen wir einen Blick auf diese beiden Funktionen. Die Funktion
substr() fängt eine Zeichenfolge ab. Die Funktion substr() kann Zeichen einer bestimmten Länge ab einer angegebenen Position in einer Zeichenfolge abfangen.
Beispiel:<?php echo substr("Hello world",0,10)."<br>"; echo substr("Hello world",1,8)."<br>"; echo substr("Hello world",0,5)."<br>"; echo substr("Hello world",6,6)."<br><br>"; echo substr("Hello world",0,-1)."<br>"; echo substr("Hello world",-10,-2)."<br>"; echo substr("Hello world",0,-6)."<br>"; echo substr("Hello world",-2-3)."<br><br>"; echo substr("欢迎来到PHP中文网",0,3)."<br>"; ?>
Die Funktion substr() hat kein Problem mit der Verarbeitung von Englisch, aber in der Entwicklung neigen wir dazu, mehr chinesische Zeichen zu verarbeiten, obwohl sie nicht sehr effizient ist . Wie kann man also chinesische Schriftzeichen abfangen? Sie können die Funktion mb_substr() verwenden.
Die Funktion mb_substr() fängt chinesische Zeichenfolgen ab. Die Funktion mb_substr() kann einen bestimmten Teil einer Zeichenfolge abfangen. Anders als die Funktion substr() ist die Funktion mb_substr() nicht nur für englische Zeichen wirksam, sondern auch für Auch chinesische Schriftzeichen sind gültig.
<?php header("Content-type:text/html;charset=utf-8"); $str = '欢迎访问PHP中文网,一个在线学习编程的网站。'; echo mb_substr($str,0, 4,"utf-8").'<br>'; echo mb_substr($str, -19,strlen($str),"utf-8").'<br>'; echo mb_substr($str, 4, 6,"utf-8").'<br>'; echo mb_substr($str, 4, -16,"utf-8").'<br>'; echo mb_substr($str, -19, -13,"utf-8").'<br>'; echo mb_substr($str, -19, 6,"utf-8").'<br>'; var_dump(mb_substr($str, 40,"utf-8")); echo '<br>'; var_dump(mb_substr($str, 4, null,"utf-8")); ?>
Nutzungstipps: Verwenden Sie die Funktion mb_substr(), um eine Zeichenfolge mit der angegebenen Länge abzufangen und den überschüssigen Teil durch „…“ zu ersetzen.
<?php header("Content-type:text/html;charset=utf-8"); $str = 'php中文网是一个在线学习编程的网站,我们发布了多套文字教程,它们都通俗易懂,深入浅出。'; if(strlen($str)>18){ echo mb_substr($str, 0, 18,"utf-8").'...'; }else{ echo $str; } ?>
PHP-Video-Tutorial
“Das obige ist der detaillierte Inhalt vonWie man in PHP eine Zeichenfolge von einer Ziffer abfängt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!