Collator::compare

collator_compare

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)

Collator::compare -- collator_compareCompare deux chaînes Unicode

Description

Style orienté objet

publicCollator::compare(string$string1, string$string2): int|false

Style procédural

collator_compare(Collator$object, string$string1, string$string2): int|false

Compare deux chaînes Unicode en fonction des règles de collation.

Liste de paramètres

object

Objet Collator.

string1

La première chaîne à comparer.

string2

La deuxième chaîne à comparer.

Valeurs de retour

Résultats de comparaison

  • 1 si string1 est plus grand que string2 ;

  • 0 si string1 est égal à string2;

  • -1 si string1 est plus petit que string2 .

Retourne false en cas d'échec.
Avertissement

Cette fonction peut retourner false, mais elle peut aussi retourner une valeur équivalent à false. Veuillez lire la section sur les booléens pour plus d'informations. Utilisez l'opérateur === pour tester la valeur de retour exacte de cette fonction.

Exemples

Exemple #1 Exemple avec collator_compare()

<?php
$s1
= 'Hello';
$s2 = 'hello';

$coll = collator_create( 'en_US' );
$res = collator_compare( $coll, $s1, $s2 );

if (
$res === false) {
echo
collator_get_error_message( $coll );
} else if(
$res > 0 ) {
echo
"s1 est plus grand que s2\n";
} else if(
$res < 0 ) {
echo
"s1 est plus petit que s2\n";
} else {
echo
"s1 est égal à s2\n";
}
?>

L'exemple ci-dessus va afficher :


s1 est plus grand que s2

Exemple #2 Comparer des chaînes sans diacritique ou sensibilité à la casse

<?php
$c
= new Collator( 'en' );
$c->setStrength( Collator::PRIMARY );
if (
$c->compare( 'Séan', 'Sean' ) == 0 )
{
echo
"The same\n";
}

L'exemple ci-dessus va afficher :


The same

Cet exemple demande au collator de ne comparer en ne prenant compte que des caractères de base. La documentation pour Collator->setStrength() explique les duretés différentes.

Voir aussi

To Top