Detaillierte Einführung in PHP-Such- und Interception-String-Funktionen (mit Beispielen)

不言
Freigeben: 2023-04-04 17:50:02
nach vorne
5789 Leute haben es durchsucht

Dieser Artikel bietet Ihnen eine detaillierte Einführung in die Such- und Abfangfunktionen von PHP (mit Beispielen). Ich hoffe, dass er Ihnen als Referenz dienen wird.

Es ist oft notwendig, Zeichenfolgen zu suchen und abzufangen , substr und andere Funktionen werden hier organisiert und aufgezeichnet. strstrstring strstr ( string $haystack , Mixed $needle [, bool $before_needle = false ] ) Gibt den Heuhaufen-String zurück, beginnend an der Position, an der die Nadel zum ersten Mal erscheint, um den Heuhaufen zu stapeln Endzeichenfolge. strstr findet die Position, an der das Zeichen zum ersten Mal erscheint, und gibt einen Teil davon zurück. Wenn nicht, wird false zurückgegeben. Beispiel

<?php
$str = 'abcdefabcdef';
echo strstr($str, 'c') . PHP_EOL;// cdefabcdef,返回第一次出现位置后面的字符串,包括c
echo strstr($str, 'c', true);// ab,返回第一次出现位置后面的字符串,不包括c
Nach dem Login kopieren
strrchr

string strrchr ( string $haystack , Mixed $needle )
Diese Funktion gibt einen Teil der Heuhaufenzeichenfolge zurück, beginnend mit dem letzten Vorkommen von Needle bis zum Ende des Heuhaufens .
strrchr findet das letzte Vorkommen des Zeichens und kehrt zum Ende zurück. Wenn es nicht gefunden wird, gibt es false zurück. Beispiel

<php
$str = 'abcdefabcdef';
echo strrchr($str, 'c');// cdef,返回最后一次出现位置后面的字符串,包括c
Nach dem Login kopieren
strpos

mixed strpos ( string $haystack , Mixed $needle [, int $offset = 0 ] )
Gibt die numerische Position zurück, an der die Nadel zum ersten Mal im Heuhaufen erscheint.
strpos findet die Position, an der das Zeichen zum ersten Mal erscheint, und gibt die Zahl an dieser Position zurück. Wenn sie nicht gefunden wird, wird „false“ zurückgegeben. Beispiel

<?php
$str = 'abcdefabcdef';
echo strpos($str, 'e') . PHP_EOL;// 4,字符串位置是从0开始
echo strpos($str, 'e',3) . PHP_EOL;// 4,从第3位开始查找
echo strpos($str, 'e',11);// false,从第11位开始查找
Nach dem Login kopieren
strrpos

int strrpos ( string $haystack , string $needle [, int $offset = 0 ] )
Gibt die numerische Position des letzten Vorkommens von Needle im String haystack zurück .
strrpos findet die Position, an der das Zeichen zuletzt erschien, und gibt die Zahl an dieser Position zurück. Wenn sie nicht gefunden wird, wird „false“ zurückgegeben. Beispiel

<?php
$str = 'abcdefabcdef';
echo strrpos($str, 'e') . PHP_EOL;// 10,字符串位置是从0开始
echo strrpos($str, 'e', 4) . PHP_EOL;// 10,从第4位开始查找
echo strrpos($str, 'e', 11) . PHP_EOL;// false,从第11位开始查找
echo strrpos($str, 'e',-5);// 4,从尾部第5位开始查找
Nach dem Login kopieren
substr

string substr ( string $string , int $start [, int $length ] )
Gibt den durch die Start- und Längenparameter angegebenen String-Teilstring zurück.
substr gibt die abgefangene Zeichenfolge gemäß den Positionsparametern zurück und gibt bei einem Fehler false zurück. Beispiel

<?php
$str = 'abcdefabcdef';
echo substr($str, 0, 5) . PHP_EOL;// abcde,从首部开始截取5位
echo substr($str, 0, -3) . PHP_EOL;// abcdefabc,从首部开始截取-3位
echo substr($str, -2) . PHP_EOL;// ef,从尾部开始截取2位
echo substr($str, -5, 3) . PHP_EOL;// bcd,从尾部第5位开始截取3位
echo substr($str, -5, -1) . PHP_EOL;// bcde,从尾部第5位开始截取-1位
Nach dem Login kopieren
Beispiele und Kommentare

Beispiele

Die oben genannten sind einfache Beispiele für Funktionen, die uns helfen, mit halbem Aufwand das Doppelte des Ergebnisses zu erzielen. Das Folgende ist ein Beispiel für den Erhalt eines E-Mail-Benutzernamens oder E-Mail-Domänennamens
<?php
$email = '123456@example.com';
// 获取用户名
echo strstr($email, '@', true) . PHP_EOL;
echo substr($email, 0, strpos($email, '@')) . PHP_EOL;
echo substr($email, 0, strrpos($email, '@')) . PHP_EOL;// 邮箱中只有一个@,所有 strpos 和 strrpos 相同
// 获取邮箱域名
echo substr(strstr($email, '@'), 1) . PHP_EOL;
echo substr(strrchr($email, '@'), 1) . PHP_EOL;
echo substr($email, strpos($email, '@') + 1) . PHP_EOL;
echo substr($email, strrpos($email, '@') + 1);// 同上
Nach dem Login kopieren

Hinweise

stristr, stripos und strripos sind Versionen von strstr, strpos, bei denen die Groß- und Kleinschreibung nicht berücksichtigt wird. bzw. strrpos

strpos, Version 7.1.0 beginnt mit der Unterstützung negativer Offsets

  • substr, Länge ist eine negative Zahl, dann ist die Länge Zeichen am Ende der Zeichenfolge wird weggelassen

  • strpos, strrpos, verwenden Sie „===", um den Rückgabewert zu bestimmen, da es möglich ist, einen nicht-booleschen Wert zurückzugeben, der false entspricht

  • strpos, strrpos, der zweite Parameter muss ein String-Typ sein. Wenn Sie sich nicht sicher sind, konvertieren Sie am besten

  • Verwenden Sie „regular“. Funktionen können auch Zeichenfolgen suchen und abfangen, aber das Gleiche Im Fall von Effekt wird die Regularisierungseffizienz langsamer sein

  • Wenn Sie nur bestätigen möchten, ob das Zeichen in der Zeichenfolge vorhanden ist, strpos ist effizienter als strstr

  • mbstring kann Multibyte-codierte Zeichenfolgen besser verarbeiten

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in PHP-Such- und Interception-String-Funktionen (mit Beispielen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:segmentfault.com
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!