Menu
Coddy logo textTech

Cast to Different Types

Parte de la sección Fundamentos del Journey de PHP de Coddy — lección 14 de 71.

Para convertir la entrada a un tipo diferente, necesitamos hacer un cast. Para hacer cast de una cadena a un int (un número entero), escribiremos:

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

O en una línea:

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

Si la entrada es un número, es decir, 5, 4, 54, entonces $var contendrá un número. Si la entrada contiene un número inválido: 5ab, bb, akt, etc., entonces PHP convertirá lo que pueda (p. ej., "5ab" se convierte en 5, "bb" se convierte en 0).

Aquí tienes una tabla que muestra cómo realizar casting a diferentes tipos:

CastingExplicación
(int)Convertir a un número entero
(float)Convertir a un número real
(bool)Convertir a un booleano
(string)Convertir a una cadena

Es importante usar el tipo correcto porque puede afectar la salida.

Sumar dos cadenas resultará en:

"5" + "5" = 10(PHP convierte las cadenas a números para operaciones aritméticas)

La concatenación de dos cadenas resultará en:

"5" . "5" = “55”

challenge icon

Desafío

Tu tarea:

  1. Lee el primer número de la entrada y guárdalo en una variable
  2. Lee el segundo número de la entrada y guárdalo en otra variable
  3. Convierte la segunda variable al tipo int
  4. Calcula la multiplicación de estos dos números
  5. Imprime el resultado

Ejemplo:

Si las entradas son 2 y 4.5, tu programa debe producir 8 porque 4.5 se convierte en 4

Hoja de referencia

Para hacer cast (convertir) un valor a un tipo diferente en PHP, utilice la sintaxis de casting:

$var = (int)$value;    // Cast to integer (whole number)
$var = (float)$value;  // Cast to float (real number)
$var = (bool)$value;   // Cast to boolean
$var = (string)$value; // Cast to string

Haciendo casting de la entrada desde STDIN a un entero:

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

O en una sola línea:

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

Al hacer casting de cadenas a enteros, PHP convierte lo que puede. Los caracteres inválidos se ignoran:

  • "5ab" se convierte en 5
  • "bb" se convierte en 0
  • "4.5" se convierte en 4

El tipo afecta las operaciones:

  • Aritmética con cadenas: "5" + "5" = 10 (PHP auto-convierte a números)
  • Concatenación: "5" . "5" = "55"

Pruébalo tú mismo

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

// Convertir $secondNumber a int

// Calcular el resultado
$result = ?;

echo $result;

?>
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos