(PHP 5, PHP 7)
substr_compare — Compare deux chaînes depuis un offset jusqu'à une longueur en caractères
$main_str
, string $str
, int $offset
[, int $length
[, bool $case_insensitivity
= false
]] )
substr_compare() compare main_str
à partir de la position offset
avec str
pendant length
caractères.
main_str
La chaîne principale à comparer.
str
La chaîne secondaire à comparer.
offset
La position de départ de la comparaison dans main_str
. Si c'est une valeur négative,
on commence à compter à partir de la fin de la chaîne.
length
La longueur de la comparaison. La valeur
par défaut est le maximum entre la longueur de str
et la longueur de main_str
moins le paramètre offset
.
case_insensitivity
Si case_insensitivity
vaut TRUE
, la comparaison
est insensible à la casse.
Retourne < 0 si main_str
à partir de
offset
est inférieur à str
, >
0 s'il est plus grand que str
, et 0 si ils sont égaux.
Si length
est égal ou plus grand que la taille de
main_str
ou que length
est configuré
et est inférieur à 1 (avant PHP 5.6), substr_compare()
affiche une alerte et retourne FALSE
.
Version | Description |
---|---|
5.6.0 |
Le paramètre length
peut maintenant valoir 0.
|
5.1.0 |
Ajout de la possibilité d'utiliser une valeur négative pour le
paramètre offset .
|
Exemple #1 Exemple avec substr_compare()
<?php
echo substr_compare("abcde", "bc", 1, 2); // 0
echo substr_compare("abcde", "de", -2, 2); // 0
echo substr_compare("abcde", "bcg", 1, 2); // 0
echo substr_compare("abcde", "BC", 1, 2, true); // 0
echo substr_compare("abcde", "bc", 1, 3); // 1
echo substr_compare("abcde", "cd", 1, 2); // -1
echo substr_compare("abcde", "abc", 5, 1); // warning
?>