Maison > Article > développement back-end > Comment déterminer si un caractère spécifié est dans une chaîne en php
Méthode de jugement : 1. Utilisez strpos(). Si le caractère spécifié existe, renvoyez la position où il apparaît en premier s'il n'est pas trouvé, renvoyez FALSE. 2. Utilisez strrpos(). Si le caractère spécifié existe, il renvoie la position de la dernière occurrence ; s'il n'est pas trouvé, il renvoie FALSE. 3. Utilisez stripos(), si c'est le cas, renvoyez la position où il apparaît pour la première fois. 4. Utilisez strripos(), si c'est le cas, renvoyez la dernière position d'occurrence. 5. Utilisez éclater() si le tableau renvoyé n'est pas vide.
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur DELL G3
php détecte si une chaîne contient une autre chaîne
Méthode 1 : Utiliser la fonction strpos() détection
La fonction strpos() peut trouver la première occurrence d'une chaîne dans une autre chaîne (sensible à la casse).
Si le caractère spécifié existe, renvoie la position de la première occurrence ; s'il n'est pas trouvé, renvoie FALSE.
Remarque : la position de la chaîne commence à 0 et non à 1.
Exemple :
<?php header('content-type:text/html;charset=utf-8'); $findme1 = 'y'; $findme2 = 'Y'; $mystring = 'xyz'; $pos1 = strpos($mystring, $findme1); $pos2 = strpos($mystring, $findme2); var_dump($pos1); var_dump($pos2); if($pos1){ echo $mystring." 中包含指定字符 $findme1 <br>"; }else{ echo $mystring." 中不包含指定字符 $findme1 <br>"; } if($pos2){ echo $mystring." 包含指定字符 $findme2 <br>"; }else{ echo $mystring." 不包含指定字符 $findme2 <br>"; } ?>
Méthode 2 : utilisez la fonction strrpos() pour détecter
La fonction strrpos() peut trouver la dernière position d'occurrence d'une chaîne dans une autre chaîne (sensible à la casse).
Si le caractère spécifié existe, renvoie la position de la dernière occurrence s'il n'est pas trouvé, renvoie FALSE.
Exemple :
<?php header('content-type:text/html;charset=utf-8'); $findme1 = 'C'; $findme2 = 'c'; $mystring = 'ABC'; $pos1 = strrpos($mystring, $findme1); $pos2 = strrpos($mystring, $findme2); var_dump($pos1); var_dump($pos2); if($pos1){ echo $mystring." 中包含指定字符 $findme1 <br>"; }else{ echo $mystring." 中不包含指定字符 $findme1 <br>"; } if($pos2){ echo $mystring." 包含指定字符 $findme2 <br>"; }else{ echo $mystring." 不包含指定字符 $findme2 <br>"; } ?>
Méthode 3 : Utiliser la fonction stripos()
La fonction stripos() peut trouver la première occurrence d'une chaîne dans une autre chaîne (insensible à la casse).
Si le caractère spécifié existe, renvoie la position de la première occurrence ; s'il n'est pas trouvé, renvoie FALSE.
<?php header('content-type:text/html;charset=utf-8'); $findme1 = 'y'; $findme2 = 'Y'; $mystring = 'xyz'; $pos1 = stripos($mystring, $findme1); $pos2 = stripos($mystring, $findme2); var_dump($pos1); var_dump($pos2); if($pos1){ echo $mystring." 中包含指定字符 $findme1 <br>"; }else{ echo $mystring." 中不包含指定字符 $findme1 <br>"; } if($pos2){ echo $mystring." 包含指定字符 $findme2 <br>"; }else{ echo $mystring." 不包含指定字符 $findme2 <br>"; } ?>
Méthode 4 : Utiliser la détection de la fonction strripos()
La fonction strripos() peut trouver la dernière occurrence d'une chaîne dans une autre chaîne (insensible à la casse).
Si le caractère spécifié existe, renvoie la position de la dernière occurrence s'il n'est pas trouvé, renvoie FALSE.
<?php header('content-type:text/html;charset=utf-8'); $findme1 = 'C'; $findme2 = 'c'; $mystring = 'ABC'; $pos1 = strripos($mystring, $findme1); $pos2 = strripos($mystring, $findme2); var_dump($pos1); var_dump($pos2); if($pos1){ echo $mystring." 中包含指定字符 $findme1 <br>"; }else{ echo $mystring." 中不包含指定字符 $findme1 <br>"; } if($pos2){ echo $mystring." 包含指定字符 $findme2 <br>"; }else{ echo $mystring." 不包含指定字符 $findme2 <br>"; } ?>
Méthode 5 : Utilisez la fonction explosive() pour détecter
La fonctionexplode() utilise le délimiteur spécifié pour diviser une chaîne et renvoie un tableau composé de chaînes.
Si le tableau n'est pas un tableau vide (la longueur du tableau est supérieure à 1), il est inclus ; sinon, le tableau est vide et ne contient pas d'autre chaîne
<?php header('content-type:text/html;charset=utf-8'); $url = "001a.gif"; $str = "a"; $con = explode($str,$url); if (count($con)>1){ echo $url." 中包含 ".$str; }else{ echo $url." 中没有包含 ".$str; } ?>
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!