Collator::compare

collator_compare

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

Collator::compare -- collator_compareCompara duas strings Unicode

Descrição

Estilo orientado a objetos

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

Estilo procedural

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

Compara duas strings Unicode de acordo com as regras de agrupamento.

Parâmetros

object

Objeto Collator.

string1

A primeira string a comparar.

string2

A segunda string a comparar.

Valor Retornado

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.

Retorna false em caso de falha.
Aviso

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.

Exemplos

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á:


s1 é maior que s2

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á:


Iguais

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").

Veja Também

To Top