Heim >Backend-Entwicklung >PHP-Tutorial >PHP-String
Der in diesem Artikel vorgestellte Inhalt handelt von PHP-Strings, die einen bestimmten Referenzwert haben. Jetzt kann ich ihn mit allen teilen, die ihn benötigen.
iconv_strlen erhält die Anzahl der Zeichen
/ / Angenommen, die aktuelle Seitenkodierung ist GBK
<?php $str="中国abc"; echo strlen($str); //返回7,因为 GBK编码每个中文两个字节,strlen是返回字符串所占的字节长度。 echo "<hr>"; echo iconv_strlen($str,"GBK"); //返回5.iconv_strlen 是统计字符串的字符数量 ?>
//Angenommen, die aktuelle Seitenkodierung ist UTF-8
<?php $str="中国abc"; echo strlen($str); //返回9,因为 UTF-8编码每个中文三个字节,strlen是返回字符串所占的字节长度。 echo "<hr>"; echo iconv_strlen($str,"UTF-8"); //返回5.iconv_strlen 是统计字符串的字符数量 ?>
iconv_strlen kann trotzdem verwendet werden Berechnen Sie die genaue Anzahl der Zeichen.
mb_strlen – Ermitteln Sie die Länge einer Zeichenfolge.
Die in PHP integrierte Zeichenfolgenlängenfunktion strlen kann chinesische Zeichenfolgen nicht korrekt verarbeiten. Sie ermittelt nur die Anzahl der von der Zeichenfolge belegten Bytes.
Bei der GB2312-Codierung für Chinesisch beträgt der durch strlen erhaltene Wert das Doppelte der Anzahl chinesischer Zeichen, während bei UTF-8-codiertem Chinesisch der Unterschied dreimal beträgt (bei UTF-8-Codierung belegt ein chinesisches Zeichen 3 Zeichen).
Die Verwendung der Funktion mb_strlen kann dieses Problem besser lösen.
Die Verwendung von mb_strlen ähnelt der von strlen, außer dass es einen zweiten optionalen Parameter zur Angabe der Zeichenkodierung hat.
Um beispielsweise die Länge der UTF-8-Zeichenfolge $str zu erhalten, können Sie mb_strlen($str,'UTF-8') verwenden.
Wenn der zweite Parameter weggelassen wird, wird die interne Kodierung von PHP verwendet. Die interne Kodierung kann über die Funktion mb_internal_encoding() abgerufen werden.
Es ist zu beachten, dass mb_strlen keine Kernfunktion von PHP ist. Bevor Sie es verwenden, müssen Sie sicherstellen, dass php_mbstring.dll in php.ini geladen ist, d. h. stellen Sie sicher, dass die Zeile „extension=php_mbstring. dll“ existiert und wurde nicht auskommentiert, andernfalls ist ein Problem mit einer undefinierten Funktion aufgetreten.
mb_strlen('abcdef','utf-8') und mb_strlen('one two three four five six', 'utf-8') sind beide gleich 6
trim
echo trim (" ,1,2,3,4,", ","); Sie erhalten 1,2,3,4 mit abgeschnittenen ","-Zahlen an beiden Enden.
strcmp()-Funktion vergleicht zwei Zeichenfolgen.
Hinweis: Die Funktion strcmp() ist binärsicher und unterscheidet zwischen Groß- und Kleinschreibung.
Diese Funktion gibt Folgendes zurück:
0 – wenn die beiden Zeichenfolgen gleich sind
8882647d49ae72a017158605d90958bb0 – wenn Zeichenfolge1 größer als Zeichenfolge2 ist
HTML-bezogen
1,htmlspecialchars($string)
Dies ist die einfachste Verwendung, bei der einige Sonderzeichen (wie der Name schon sagt) &,',"6580843315dd7804e35fd3743df832ea in der Zeichenfolge in die entsprechenden HTML-Entitätsformen umgewandelt werden :
PHP:
$str = "i love kiki, iwind said."; echo htmlspecialchars($str);
gibt
i love 8121d6c8a34839335b283c3765c68ed6kikie6e38b3c62e8df885fe2e3986461aa63 aus, sagte iwind.
2,htmlentities ( $string)
Konvertieren Sie alle Zeichen, die in eine Entitätsform konvertiert werden können, in eine Entitätsform
3,html_entity_decode($string);
Nach PHP4.3.0 hinzugefügt, hat es den gegenteiligen Effekt von htmlentities($string ). Funktion.
4,nl2br($string)
Konvertiert alle Newline-Zeichen in
+ Newline-Zeichen. Zum Beispiel:
PHP: $str = "i love kiki,/n iwind said."; echo nl2br($str);🎜>Ich liebe Kiki
sagte iwind.
Verwandte Empfehlungen:
Das obige ist der detaillierte Inhalt vonPHP-String. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!