(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
Collator::compare -- collator_compare — Compare two Unicode strings
Objektorientierter Stil
Prozeduraler Stil
Compare two Unicode strings according to collation rules.
object
Collator object.
string1
The first string to compare.
string2
The second string to compare.
Return comparison result:
1 if string1
is greater than
string2
;
0 if string1
is equal to
string2
;
-1 if string1
is less than
string2
.
false
on failure.
Diese Funktion kann sowohl das
boolsche false
zurückliefern, als auch einen nicht-boolschen Wert, welcher zu false
ausgewertet wird.
Weitere Informationen entnehmen Sie bitte dem Abschnitt über die
boolschen Typen. Benutzen Sie deshalb
den === Operator,
um den Rückgabewert dieser Funktion zu überprüfen.
Beispiel #1 collator_compare() example
<?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 is greater than s2\n";
} else if( $res < 0 ) {
echo "s1 is less than s2\n";
} else {
echo "s1 is equal to s2\n";
}
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Beispiel #2 Comparing strings without diacritics or case-sensitivity
<?php
$c = new Collator( 'en' );
$c->setStrength( Collator::PRIMARY );
if ( $c->compare( 'Séan', 'Sean' ) == 0 )
{
echo "The same\n";
}
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
This example instructs the collator to compare with only taking the base characters into account. The documentation for Collator->setStrength() explains the different strengths.