Maison >développement back-end >Problème PHP >Comment obtenir les derniers chiffres d'une chaîne en php
Deux méthodes : 1. Utilisez la fonction substr() pour intercepter les N derniers chiffres de la chaîne anglaise. Il vous suffit de définir le deuxième paramètre de la fonction sur "-N" et d'omettre le troisième paramètre. ( $str,-N)"; 2. Utilisez la fonction mb_substr() pour intercepter les N derniers chiffres de la chaîne chinoise. Il vous suffit de définir le deuxième paramètre de la fonction sur "-N" et le troisième paramètre sur N . Syntaxe "mb_substr($str,-N,N, encodage des caractères)".
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur DELL G3
Méthode 1 : Utiliser la fonction substr() pour intercepter les N derniers chiffres de la chaîne anglaise
Le La fonction substr() peut commencer à partir de caractères Intercepter les caractères d'une certaine longueur à partir de la position spécifiée dans la chaîne.
substr(string,start,length)
paramètre | description |
---|---|
chaîne | obligatoire. Spécifie une partie de la chaîne à renvoyer. |
start | Obligatoire. Spécifie où commencer la chaîne.
|
longueur | Facultatif. Spécifie la longueur de la chaîne à renvoyer. La valeur par défaut est jusqu'à la fin de la chaîne.
|
à partir de la fin de la chaîne Définissez simplement le deuxième paramètre de la fonction sur -N
, Si le troisième paramètre est omis, les N derniers caractères de la chaîne peuvent être interceptés. -N
,第三个参数省略即可截取字符串后N位字符。
<?php header('content-type:text/html;charset=utf-8'); $str="Hello world"; echo "原字符串:".$str."<br>"; echo "截取后1位:".substr($str,-1)."<br>"; echo "截取后2位:".substr($str,-2)."<br>"; echo "截取后3位:".substr($str,-3)."<br>"; echo "截取后4位:".substr($str,-4)."<br>"; echo "截取后5位:".substr($str,-5)."<br>"; ?>
注:substr() 函数对英文的处理是没有任何问题的,但是在开发中我们往往是处理中文字符比较多,substr() 函数虽然也能处理中文,但是不是很完美。
<?php header('content-type:text/html;charset=utf-8'); $str="欢迎来到PHP中文网"; echo "原字符串:".$str."<br>"; echo "截取后1位:".substr($str,-1)."<br>"; echo "截取后2位:".substr($str,-2)."<br>"; ?>
那么怎么截取中文字符呢?可以使用mb_substr()函数。
方法2:使用mb_substr()函数截取中文字符串后N位
mb_substr() 函数可以从一个字符串中截取指定的一部分,与 substr() 函数不同的是,mb_substr() 函数不仅对英文字符有效,对中文字符同样有效。
mb_substr(string,start,length,encoding)
参数 | 描述 |
---|---|
str | 必需。从该 string 中提取子字符串。 |
start |
必需。规定在字符串的何处开始。
|
length | 可选。规定要返回的字符串长度。默认是直到字符串的结尾。
|
encoding | 可选。字符编码。如果省略,则使用内部字符编码。 |
只需要将该函数的第二个参数设置为-N
,第三个参数设置为N
<?php header('content-type:text/html;charset=utf-8'); $str="欢迎来到PHP中文网"; echo "原字符串:".$str."<br>"; echo "截取后1位:".mb_substr($str,-1,1,"utf-8")."<br>"; echo "截取后2位:".mb_substr($str,-2,2,"utf-8")."<br>"; echo "截取后3位:".mb_substr($str,-3,3,"utf-8")."<br>"; echo "截取后4位:".mb_substr($str,-4,4,"utf-8")."<br>"; ?>
Remarque : Il n'y a aucun problème avec la fonction substr() dans le traitement de l'anglais, mais lors du développement, nous avons tendance à traiter davantage de caractères chinois. Bien que la fonction substr() puisse également gérer le chinois, elle n'est pas parfaite.
rrreeeAlors comment intercepter les caractères chinois ? Vous pouvez utiliser la fonction mb_substr().
🎜🎜Méthode 2 : utilisez la fonction mb_substr() pour intercepter les N derniers chiffres de la chaîne chinoise🎜🎜🎜 La fonction mb_substr() peut intercepter une partie spécifiée d'une chaîne Contrairement à la fonction substr(), la fonction mb_substr(). fonction non seulement, elle est valable pour les caractères anglais et également valable pour les caractères chinois. 🎜rrreee🎜🎜🎜🎜Paramètres🎜🎜Description🎜🎜🎜🎜🎜str🎜🎜🎜Obligatoire. Extrait une sous-chaîne de cette chaîne. 🎜🎜🎜-N
et le troisième paramètre sur N
pour intercepter les N derniers caractères de la chaîne. . 🎜rrreee🎜🎜🎜🎜Apprentissage recommandé : "🎜Tutoriel vidéo PHP🎜"🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!