Operadores de comparação em PHP

Nenhum produto encontrado nessa seleção.

Operadores de comparação em PHP, como o próprio nome já diz, servem para comparar valores e realizar determinadas ações de acordo com a resposta. Você pode comparar se um valor é maior ou menor que o outro, se são iguais, se são iguais e do mesmo tipo, e assim por diante.

Eles são muito úteis no seu código, já que podem determinar se alguma ação deverá ser tomada ou não. Um bom exemplo disso seria um sistema de login, onde você deve saber se o usuário está (ou não) logado quando ele tentar acessar sua página de atualização de perfil, porém, as possibilidades de cenários aqui são infinitas.

Operadores de comparação em PHP

A tabela abaixo mostra os operadores de comparação suportados pelo PHP (está presente no próprio site do PHP).

ExemploNomeResultado
$a == $bIgual (==)Verdadeiro (TRUE) se $a é igual a $b.
$a === $bIdêntico (===)Verdadeiro (TRUE) se $a é igual a $b, e eles são do mesmo tipo.
$a != $bDiferente (!=)Verdadeiro se $a não é igual a $b.
$a <> $bDiferente (<>)Verdadeiro se $a não é igual a $b.
$a !== $bNão idêntico (!==)Verdadeiro de $a não é igual a $b, ou eles não são do mesmo tipo.
$a < $bMenor que (<)Verdadeiro se $a é menor que $b.
$a > $bMaior que (>)Verdadeiro se $a é maior que $b.
$a <= $bMenor ou igual (<=)Verdadeiro se $a é menor ou igual a $b.
$a >= $bMaior ou igual (>=)Verdadeiro se $a é maior ou igual a $b.

Quando precisamos comparar valores em PHP, utilizamos as estruturas de controle (que ainda vamos falar no decorrer deste curso). Elas servem para que possamos executar ações se alguma comparação for verdadeira ou falsa.

Veja um exemplo:

<?php
// Verifica se $a é maior que $b
if ( $a > $b ) {
	echo '$a é maior que $b.';
} else {
	echo '$a é menor que $b';
}
?>

Os tipos de dados também interferem na sua comparação. A tabela abaixo mostra o que acontece quando você tenta comparar valores de tipos diferentes.

Tipo do 1º operandoTipo do 2º operandoResultado
null ou stringstringConverte NULL para “”, numérico ou comparação léxica
bool or nullqualquerConverte para bool, FALSE < TRUE
objectobjectClasses nativas podem definir como são comparadas, classes diferentes são incomparáveis, mesma classe – compara propriedades igual faz arrays (PHP 4), PHP 5 tem sua explicação
string, resource ou numberstring, resource ou numberTransforma strings e resources para números
arrayarrayArray com menos membros é menor, se a chave do operando 1 não é encontrada no operando 2, então os arrays são incomparáveis, caso contrário – compara valor por valor (veja o seguinte exemplo)
arrayqualquerarray é sempre maior
objectqualquerobject é sempre maior

Também é possível utilizar o operador ternário (?:) para comparar valores. Veja um exemplo:

<?php
echo isset( $a ) && $a > $b ? '$a existe e é maior que $b' : '$a não existe';
?>

Neste caso a comparação é feita da seguinte maneira:

(comparação) ? (ação verdadeira) : (ação falsa)

Veja outro exemplo mais simples:

<?php
echo 1 > 2 ? 'É maior' : 'É menor';
?>

No trecho acima, a expressão de comparação é “1 > 2” (Se um é maior que dois); isso irá retornar um valor falso, já que 1 é menor que dois. A ação para imprimir “É maior” não será executada, restando apenas a ação “É menor”. Essa expressão irá mostrar “É menor” na tela do usuário.

Concluindo

Os operadores de comparação dependem muito das estruturas condicionais, portanto, vamos voltar a falar deles quando falarmos sobre elas.

Vídeo aula

O vídeo abaixo descreve a aula acima:

Link do vídeo: https://youtu.be/FjAuSfAc0x0

Todas as aulas: https://www.todoespacoonline.com/w/2015/09/venha-aprender-php-de-graca/

Playlist do Curso de PHP: https://youtu.be/BMxAWNL-9pU?list=PLbIBj8vQhvm0Dq-kaGS4uXR_FdKdA_7nm

Até a próxima!