Sobes.tech
Junior — Middle

Pode explicar a estrutura e as características do sistema de tipos na linguagem PHP?

sobes.tech IA

Resposta da IA

Em PHP, o sistema de tipos é dinâmico e fracamente tipado, o que significa que as variáveis não requerem uma declaração explícita de tipo, e os tipos podem ser convertidos automaticamente quando necessário.

Características:

  • Tipagem dinâmica: o tipo da variável é determinado em tempo de execução.
  • Tipagem fraca: PHP tenta converter automaticamente os tipos nas operações (por exemplo, a string "5" pode ser usada como o número 5).
  • Tipos escalares: int, float, string, bool.
  • Tipos complexos: array, object, callable, iterable.
  • Tipos de valores de retorno e argumentos: a partir do PHP 7, é possível especificar os tipos dos parâmetros e dos valores de retorno das funções, o que aumenta a rigorosidade.
  • Tipos anuláveis: pode-se indicar que um parâmetro ou valor de retorno pode ser do tipo especificado ou null.

Exemplo de declaração de função com tipos:

function sum(int $a, int $b): int {
    return $a + $b;
}

Se argumentos de outro tipo forem passados, o PHP tentará convertê-los ou gerará um erro em modo estrito.