Veja neste post como o PHP identifica se o valor informado é do tipo interger ou double.
Vale lembrar que o PHP utiliza checagem de tipos dinamicamente; uma variável poderá conter valores de diferentes tipos em diferentes etapas da execução do seu código.
Com isso, não há necessidade de declaração do tipo de uma variável.
- É analisado o início da string. Se contiver um número, ele será avaliado. Senão, o valor será 0 (zero).
- O número pode conter um sinal no início ( “+ ” ou ” – “).
- Se a string contiver um ponto em sua parte numérica a ser analisada, ele será considerado, e o valor obtido será double.
- Se a string contiver um ” e ” ou ” E ” em sua parte numérica a ser analisada, o valor seguinte será considerado como expoente da base 10, e o valor obtido será double.
Exemplos: