Assinale a alternativa que apresenta o Operador de Coalescên...

Próximas questões
Com base no mesmo assunto
Q4232599 Programação
Assinale a alternativa que apresenta o Operador de Coalescência Nula da linguagem PHP, utilizado para retornar um valor padrão quando a variável avaliada for null ou inexistente. 
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: E

Fundamento decisivo: A decisão dependia de reconhecer a sintaxe do operador de coalescência nula em PHP, que é `??`, presente apenas na alternativa E.

Tema central: Operador `??` no PHP
Análise das alternativas
A
Errada
Incorreta porque usa `:` isoladamente, e essa não é a sintaxe do operador de coalescência nula em PHP. O critério decisivo aqui é sintático: o operador pedido é `??`, não `:`.
B
Errada
Incorreta porque apresenta `?` isolado, que não corresponde ao operador de coalescência nula. A questão cobrava o operador formado por dois pontos de interrogação: `??`.
C
Errada
Incorreta porque usa `||`, que é operador lógico OR. Mesmo podendo aparecer em expressões com valor alternativo, ele não é o operador de coalescência nula cobrado pela questão.
D
Errada
Incorreta porque traz `::`, e esse símbolo não corresponde ao operador de coalescência nula em PHP. A sintaxe exigida no enunciado é `??`.
E
Certa
A alternativa E está correta porque apresenta exatamente `??`, que é o operador de coalescência nula em PHP.
Pegadinha da questão
A confusão real era trocar `??` por operadores visual ou funcionalmente próximos, especialmente `?` do ternário e `||`, quando a questão se resolvia apenas pela identificação da sintaxe correta.
Dica para questões semelhantes
  • Quando a questão pedir um operador específico de linguagem, verifique primeiro a sintaxe exata antes de pensar em comportamento de execução.
  • Em PHP, coalescência nula se identifica por `??`; não confunda com `?` nem com `||`.
  • Se o enunciado mencionar valor padrão para null ou variável inexistente, o operador a reconhecer é o de coalescência nula.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

O operador de coalescência nula (??), introduzido nativamente a partir do PHP 7, funciona como um atalho sintático para o uso combinado da função isset() com o operador ternário. Ele avalia a primeira expressão e, caso ela exista e não seja null , retorna o seu próprio valor; caso contrário (se a variável for null ou não estiver definida), ele retorna o valor padrão especificado no operando direito. Diferente do operador lógico convencional, ele evita avisos (notices) de variáveis indefinidas no log do sistema.

  • A ($a =$b : 0): Sintaxe inválida no PHP para atribuição condicional (o operador ternário exige o ponto de interrogação ?).
  • B ($a =$b ? 0): Representa uma sintaxe incompleta ou inválida para o operador ternário (que obrigatoriamente segue o formato condição ? valor_se_verdadeiro : valor_se_falso).
  • C ($a =$b || 0): Trata-se do operador lógico OU (OR). Ele avalia o contexto booleano, o que pode gerar bugs silenciosos caso a variável $b contenha valores considerados "falsos" pelo PHP (como o número 0, uma string vazia "", um array vazio ou o booleano false), acionando o valor padrão indevidamente, e não apenas quando for estritamente null ou inexistente.
  • D ($a =$b :: 0): Trata-se do operador de resolução de escopo (Scope Resolution Operator), conhecido como Paamayim Nekudotayim ou dois-pontos duplo, utilizado para acessar métodos estáticos, propriedades estáticas ou constantes de classes.
  • E (Correta): É a representação exata do operador de coalescência nula (??), atendendo perfeitamente ao requisito de retornar um valor padrão quando a variável for nula ou inexistente.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo