"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Qual é a diferença entre os operadores `==` e `===` do PHP?

Qual é a diferença entre os operadores `==` e `===` do PHP?

Publicado em 2024-12-21
Navegar:902

What's the Difference Between PHP's `==` and `===` Operators?

Como as comparações de igualdade dupla (==) e tripla (===) do PHP diferem?

Ao comparar valores em PHP, dois operadores distintos podem ser empregados: o operador vagamente igual (==) e o operador estritamente idêntico (===). Compreender suas nuances é crucial para garantir comparações confiáveis.

Comparação vagamente igual (==)

O operador vagamente igual executa uma operação de malabarismo de tipo antes de comparar os valores. Isso significa que se os valores comparados forem de tipos diferentes, o PHP tentará convertê-los para um tipo comum. Por exemplo, comparar '1' e 1 retornará verdadeiro porque o PHP converterá a string '1' em um número inteiro 1 para verificação de igualdade.

Strict Identical (===) Comparação

Em contraste, o operador estritamente idêntico executa uma comparação rigorosa sem qualquer conversão de tipo. Os valores comparados devem ser exatamente iguais, tanto em valor quanto em tipo de dados. Se '1' e 1 forem comparados usando ===, ele retornará falso devido à diferença no tipo de dados (string vs. inteiro).

Exemplos

Para ilustrar essas diferenças, considere os seguintes exemplos:

$x = 'true';
$y = true;

echo $x == $y; // Outputs "true" (loose equal)
echo $x === $y; // Outputs "false" (strict identical)

No primeiro exemplo, o operador vagamente igual retorna verdadeiro porque 'true' e true são considerados equivalentes após a conversão de tipo. No entanto, o operador estritamente idêntico retorna falso porque os valores não são idênticos em termos de tipo de dados.

Compreender a distinção entre == e === é essencial para escrever código PHP preciso e confiável. Ao escolher cuidadosamente o operador apropriado, os desenvolvedores podem evitar resultados imprevistos causados ​​por conversões de tipo inesperadas.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3