oujood.com

strpos() en PHP : comment trouver la position d'une sous-chaîne

La fonction strpos() en PHP permet de trouver la position de la première occurrence d'une sous-chaîne dans une chaîne. Elle est souvent utilisée pour vérifier si une chaîne contient une sous-chaîne donnée.
La fonctionnent strpos () retours la position de la première occurrence d'une chaîne à l'intérieur d'une autre chaîne.

strpos() en PHP

PHP Version: 4+

PHP Évolution: PHP 7.1.0 - Le paramètre start($offset) peut être un nombre négatif

La fonction strpos() en PHP permet de trouver la position de la première occurrence d'une sous-chaîne dans une chaîne. Elle est souvent utilisée pour vérifier si une chaîne contient une sous-chaîne donnée.

Définition et utilisation

La syntaxe de la fonction strpos() est la suivante :

strpos(string $haystack, string $needle, int $offset = 0)
  • $haystack est la chaîne dans laquelle la recherche doit être effectuée.
  • $needle est la sous-chaîne à rechercher.
  • $offset est un paramètre optionnel qui permet de spécifier la position de départ de la recherche. Si $offset est égal à 0, la recherche commence au début de la chaîne $haystack. Si $offset est un nombre positif, la recherche commence à $offset caractères de la gauche de la chaîne $haystack. Si $offset est un nombre négatif, la recherche commence à $offset caractères de la droite de la chaîne $haystack.

Valeurs possibles et paramètres

La fonction strpos() renvoie la position de la première occurrence de la sous-chaîne $needle dans la chaîne $haystack. Si la sous-chaîne $needle n'est pas trouvée, la fonction renvoie false.

Exemples pratiques

Voici quelques exemples pratiques de l'utilisation de la fonction strpos() :

Exemple :       Copier le code

<?php
// Vérifier si une chaîne contient une sous-chaîne
$haystack = "Ceci est une chaîne.";
$needle = "chaîne";

if (strpos($haystack, $needle) !== false) {
echo "La chaîne contient la sous-chaîne 'chaîne'.";
} else {
echo "La chaîne ne contient pas la sous-chaîne 'chaîne'.";
}

// Obtenir la position de la première occurrence d'une sous-chaîne
$haystack = "Ceci est une chaîne avec une sous-chaîne.";
$needle = "sous-chaîne";

$position = strpos($haystack, $needle);

echo "La sous-chaîne 'sous-chaîne' se trouve à la position $position.";
?>

Syntaxes orientées objet et procédurales

La fonction strpos() est disponible en PHP 5.0 et versions ultérieures. Elle est disponible en syntaxe orientée objet et en syntaxe procédurale.

Syntaxe orientée objet

use \Spl\String;

$haystack = "Ceci est une chaîne.";
$needle = "chaîne";

$position = (new String($haystack))->strpos($needle);

echo "La sous-chaîne 'chaîne' se trouve à la position $position.";

Syntaxe procédurale

$haystack = "Ceci est une chaîne.";
$needle = "chaîne";

$position = strpos($haystack, $needle);

echo "La sous-chaîne 'chaîne' se trouve à la position $position.";

Astuces et conseils d'utilisation pratique

  • La fonction strpos() est sensible à la casse. Pour ignorer la casse, vous pouvez utiliser la fonction stripos().
  • La fonction strpos() est une fonction binary-safe. Cela signifie qu'elle peut être utilisée pour rechercher des sous-chaînes binaires.
  • La fonction strpos() est rapide et efficace. Elle est donc idéale pour les applications à fort volume de données.

Conclusion

La fonction strpos() est une fonction essentielle en PHP. Elle est utilisée pour vérifier si une chaîne contient une sous-chaîne, et pour obtenir la position de la première occurrence d'une sous-chaîne dans une chaîne.

Par carabde 22 Aout 2014, mis à jour le 7/sept/ 2023



Voir aussi nos tutoriel :

fonction convert_uuencode, convert_uuencode

Encode une chaîne de caractères en utilisant l'algorithme uuencode

Détermine si une variable est un booléen

 Détermine si une variable est un booléen

fonction stripcslashes

D code une chaîne encodée avec addcslashes