Neste artigo, são discutidas as diferenças entre os operadores de coalescentes ternários e nulos, e o operador de coalescência nula é usado como uma alternativa ao operador ternário e isset () função.
Comparando o operador ternário e o operador nulo
As principais diferenças entre o operador ternário e o operador de coalescantes nulos são descritas abaixo.
Usando o operador nulo de coalescência
O operador nulo de coalescantes é usado nos exemplos a seguir.
Exemplo 1: Usando o operador nulo de coalescência entre duas variáveis
O operador coalescante nulo pode ser usado com duas ou mais variáveis. Neste exemplo, o operador é usado para verificar os valores de diferentes variáveis.
// define duas variáveis$ resultado1
";$ resultado2
";$ resultado3
";$ resultado4
";A saída a seguir será gerada executando o script acima. O valor de $ var1 está impresso na primeira saída, o valor de $ var3 está impresso na segunda saída (porque $ var2 é indefinido), o valor de $ var5 está impresso na terceira saída (porque $ var4 é nulo) e nada é impresso para a quarta saída (porque $ var6 está vazia).
Exemplo 2: Usando o operador nulo de coalescantes para verificar $ _get [] e $ _post [] valores
Neste exemplo, o operador nulo de coalescentes é usado como uma alternativa ao isset () função. Aqui, os dois primeiros operadores são usados para verificar o valor do $ _Get [] Array, e o terceiro operador é usado para verificar o $ _Post [] variedade.
// Verifique o valor do nome do argumento da URLA saída a seguir será gerada executando o script acima sem fornecer valores para $ _Get ['nome'], $ _get ['email'], $ _get ['telefone'] e $ _post ['telefone'].
A saída a seguir será gerada se você executar o script com valores para $ _Get ['nome'] e $ _Get ['email']. Quando a terceira declaração do script é executada, o valor de $ _Post ['telefone'], que é indefinido, é verificado. Em seguida, o valor de $ _Get ['telefone'], que também é indefinido, é verificado. Portanto, o valor padrão é impresso para a terceira saída.
Exemplo 3: Comparação do operador ternário com o operador nulo de coalescência
Neste exemplo, o operador nulo de coalescentes é usado para substituir o operador ternário. Aqui, o operador ternário é usado para verificar o valor de $ _Get ['n'], e se a variável contiver um valor, ele armazenará na variável $ número; Caso contrário, vai imprimir indefinido. A mesma tarefa é realizada usando o operador nulo de coalescantes na última parte do script.
eco "A saída do operador ternário:A saída a seguir será gerada se você executar o script sem fornecer valores para $ _Get ['n']. Aqui, o operador ternário verifica se a variável $ _Get ['n'] está definido. As saídas do operador ternário e do operador de coalescantes nulos são indefinido Porque nenhum valor está definido para $ _Get ['n'].
A saída a seguir será gerada se você executar o script com um valor para $ _Get ['n']. Tanto o operador ternário quanto o operador nulo de coalescentes imprimiram o valor de $ _Get ['n'] Fornecido no URL. Aqui, 100 é atribuído para o argumento n.
Conclusão
O operador nulo de coalescência é uma característica útil do PHP que pode ser usada como alternativa ao operador ternário e ao isset () função. É melhor que o operador ternário porque é mais rápido e pode verificar os valores de várias variáveis via encadeamento, como mostrado no segundo exemplo.
Vídeo tutorial