Menu
Coddy logo textTech

Cast to Different Types

Parte da seção Fundamentos do Journey de PHP da Coddy — lição 14 de 71.

Para converter a entrada para um tipo diferente, precisamos fazer um cast. Para fazer um cast de uma string para um int (um número inteiro), escreveremos:

$var = trim(fgets(STDIN));
$var = (int)$var;

Ou em uma linha:

$var = (int)trim(fgets(STDIN));

Se a entrada for um número, ou seja, 5, 4, 54, então $var conterá um número. Se a entrada contiver um número inválido: 5ab, bb, akt, etc., então o PHP converterá o que puder (p. ex., "5ab" se torna 5, "bb" se torna 0).

Aqui está uma tabela que mostra como converter para diferentes tipos:

ConversãoExplicação
(int)Converter para um número inteiro
(float)Converter para um número real
(bool)Converter para um booleano
(string)Converter para uma string

É importante usar o tipo correto porque isso pode afetar a saída.

Adicionar duas strings resultará em:

"5" + "5" = 10 (O PHP converte strings em números para operações aritméticas)

A concatenação de duas strings resultará em:

"5" . "5" = “55”

challenge icon

Desafio

Sua tarefa:

  1. Leia o primeiro número da entrada e armazene-o em uma variável
  2. Leia o segundo número da entrada e armazene-o em outra variável
  3. Converta a segunda variável para o tipo int
  4. Calcule a multiplicação desses dois números
  5. Imprima o resultado

Exemplo:

Se as entradas forem 2 e 4.5, seu programa deve produzir a saída 8 porque 4.5 é convertido em 4

Folha de consulta

Para fazer cast (converter) um valor para um tipo diferente em PHP, use a sintaxe de casting:

$var = (int)$value;    // Converte para inteiro (número inteiro)
$var = (float)$value;  // Converte para float (número real)
$var = (bool)$value;   // Converte para booleano
$var = (string)$value; // Converte para string

Fazendo cast da entrada do STDIN para um inteiro:

$var = trim(fgets(STDIN));
$var = (int)$var;

Ou em uma linha:

$var = (int)trim(fgets(STDIN));

Ao fazer cast de strings para inteiros, o PHP converte o que pode. Caracteres inválidos são ignorados:

  • "5ab" torna-se 5
  • "bb" torna-se 0
  • "4.5" torna-se 4

O tipo afeta as operações:

  • Aritmética com strings: "5" + "5" = 10 (PHP converte automaticamente para números)
  • Concatenação: "5" . "5" = "55"

Experimente você mesmo

<?php
// Ler entrada
$firstNumber = ?;
$secondNumber = ?;

// Converter o $secondNumber para int

// Calcular o resultado
$result = ?;

echo $result;

?>
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos