(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
Collator::compare -- collator_compare — Compara duas strings Unicode
Estilo orientado a objetos
Estilo procedural
Compara duas strings Unicode de acordo com as regras de agrupamento.
object
Objeto Collator.
string1
A primeira string a comparar.
string2
A segunda string a comparar.
Retorna o resultado da comparação:
1 se string1
for maior que string2
;
0 se string1
for igual a string2
;
-1 se string1
for menor que string2
.
false
em caso de falha. Esta função pode retornar o valor booleano false
, mas também pode retornar um valor não booleano que pode ser avaliado como false
. Leia a seção sobre Booleanos para mais informações. Use o operador === para testar o valor retornado por esta função.
Exemplo #1 Exemplo de 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 é maior que s2\n";
} else if( $res < 0 ) {
echo "s1 é menor que s2\n";
} else {
echo "s1 é igual a s2\n";
}
?>
O exemplo acima produzirá:
Exemplo #2 Comparando strings sem diacríticos ou diferenciação entre maiúsculas/minúsculas
<?php
$c = new Collator( 'en' );
$c->setStrength( Collator::PRIMARY );
if ( $c->compare( 'Séan', 'Sean' ) == 0 )
{
echo "Iguais\n";
}
O exemplo acima produzirá:
Este exemplo instrui o agrupador a comparar levando em conta apenas os caracteres base. A documentação da função Collator->setStrength() explica as diferentes forças ("strengths").