Menu
Coddy logo textTech

Cast to Different Types

Fait partie de la section Fondamentaux du Journey PHP de Coddy — leçon 14 sur 71.

Pour convertir l'entrée en un type différent, nous devons caster. Pour caster une chaîne en un int (un nombre entier), nous écrirons :

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

Ou en une seule ligne :

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

Si l'entrée est un nombre, c'est-à-dire 5, 4, 54 alors $var contiendra un nombre. Si l'entrée contient un nombre invalide : 5ab, bb, akt, etc. alors PHP convertira ce qu'il peut (p. ex., "5ab" devient 5, "bb" devient 0).

Voici un tableau qui montre comment caster vers différents types :

CastExplication
(int)Convertir vers un nombre entier
(float)Convertir vers un nombre réel
(bool)Convertir vers un booléen
(string)Convertir vers une chaîne

Il est important d'utiliser le bon type car cela peut affecter la sortie.

L'ajout de deux chaînes de caractères donnera :

"5" + "5" = 10 (PHP convertit les chaînes en nombres pour les opérations arithmétiques)

Concaténer deux chaînes de caractères donnera :

"5" . "5" = “55”

challenge icon

Défi

Votre tâche :

  1. Lire le premier nombre depuis l'entrée et le stocker dans une variable
  2. Lire le deuxième nombre depuis l'entrée et le stocker dans une autre variable
  3. Convertir la seconde variable en type int
  4. Calculer la multiplication de ces deux nombres
  5. Afficher le résultat

Exemple :

Si les entrées sont 2 et 4.5, votre programme devrait afficher 8 car 4.5 est converti en 4

Aide-mémoire

Pour caster (convertir) une valeur vers un type différent en PHP, utilisez la syntaxe de cast :

$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

Caster l'entrée de STDIN vers un entier :

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

Ou en une ligne :

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

Lors du cast de chaînes vers des entiers, PHP convertit ce qu'il peut. Les caractères invalides sont ignorés :

  • "5ab" devient 5
  • "bb" devient 0
  • "4.5" devient 4

Le type affecte les opérations :

  • Arithmétique avec des chaînes : "5" + "5" = 10 (PHP convertit automatiquement en nombres)
  • Concaténation : "5" . "5" = "55"

Essayez vous-même

<?php
// Lire l'entrée
$firstNumber = ?;
$secondNumber = ?;

// Convertir $secondNumber en int

// Calculer le résultat
$result = ?;

echo $result;

?>
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux