mars 3, 2022

PHP strcmp: Comment comparer deux chaînes dans PHP

Lors de toute programmation, vous obtiendrez toujours des situations où vous devrez comparer des valeurs entre elles, et si les valeurs sont booléennes ou entières, la comparaison est simple.

Mais si vous souhaitez comparer des chaînes ou des parties de chaînes, il peut y avoir plus à la comparaison, comme un cas de la chaîne que vous comparez.

La fonction compare les deux chaînes et nous indique si la première chaîne est supérieure ou inférieure à la deuxième chaîne ou si elle est égale à la deuxième chaîne.

PHP strcmp()

PHP strcmp() est une fonction intégrée qui compare deux chaînes de caractères. La fonction strcmp() est sûre pour les binaires et sensible à la casse. La fonction strcmp() est utilisée pour comparer deux chaînes. La fonction strcmp() est sensible à la casse, ce qui souligne que les majuscules et les petites casse seront traitées différemment lors de la comparaison.

Syntaxe

Voir la syntaxe suivante.

strcmp(string1, string2)

Paramètres

Cette fonction accepte deux paramètres, qui sont décrits ci-dessous:

  1. corde1 (obligatoire): Ce paramètre fait référence à la première chaîne à utiliser dans la comparaison.
  2. string2 (obligatoire) : Ce paramètre fait référence à la deuxième chaîne à utiliser dans la comparaison.

Valeur de retour

La fonction renvoie la valeur entière aléatoire en fonction de la condition de la correspondance, qui est donnée par:

  1. Renvoie 0 si les chaînes sont égales.
  2. Renvoie une valeur négative (< 0), si la chaîne 2 est supérieure à la chaîne 1.
  3. Renvoie une valeur positive (> 0) si la chaîne 1 est supérieure à la chaîne 2.

Voir l’exemple suivant.

<?phpecho strcmp("AppDividend", "AppDividend");

Voir la sortie.

➜ pro php app.php0 ➜ pro

Maintenant, passons deux chaînes différentes.

<?phpecho strcmp("Eleven", "Millie Bobby Brown");

Voir la sortie.

➜ pro php app.php-8 ➜ pro

Maintenant, prenons un exemple dans lequel string1 est supérieur à string2.

<?phpecho strcmp("Millie Bobby Brown", "Maddison");

Voir la sortie.

➜ pro php app.php8 ➜ pro

Voici donc comment comparer deux chaînes en PHP en utilisant la fonction strcmp().

== opérateur

La façon la plus courante de comparer deux chaînes est simplement d’utiliser l’opérateur ==. Si les deux chaînes sont égales l’une à l’autre, elle renvoie true.

<?php// Using the == operator, Strings match is printedif('KRUNAL' == 'krunal'){ echo 'Strings match.';} else { echo 'Strings do not match.';}

Voir la sortie.

➜ pro php app.phpStrings do not match. ➜ pro

Ce code renverra que les chaînes n’étaient pas dans le même cas. Cela ne correspondra pas.

Si toutes les lettres d’une chaîne étaient en majuscules, cela renverra false et que les chaînes ne correspondent pas.

Cela signifie que nous ne pouvons pas utiliser l’opérateur == lors de la comparaison de chaînes à partir d’entrées utilisateur; même si la première lettre est en majuscule, elle retournera toujours false.

Nous devons donc utiliser une autre fonction pour aider à comparer les chaînes.

PHP compare deux chaînes et renvoie la différence

Nous pouvons utiliser la fonction similar_text(), qui calcule la similarité entre deux chaînes.

Il calcule la similitude entre deux chaînes de caractères décrites dans Programming Classics: Implementing the World’s Best Algorithms d’Oliver (ISBN 0-131-00413-1).

Notez que cette implémentation n’utilise pas de pile comme dans le pseudocode d’Oliver, mais les appels récursifs peuvent ou non accélérer l’ensemble du processus.

Notez également que la complexité de cet algorithme est O(N ** 3), où N est la longueur de la chaîne la plus longue.

Voir l’exemple suivant.

<?php$diff = similar_text('Krunal', 'Ankit', $perc);echo $diff;

Voir la sortie suivante.

➜ pro php app.php1 ➜ pro

Enfin, l’exemple PHP strcmp() est terminé.

Messages Recommandés

PHP str_split()

PHP str_repeat()

Objet En PHP

Bases De La Classe En PHP

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.