Débutant40 min25 XP
Objectifs de cette leçon
- Créer des variables avec le sigle $
- Connaître les types principaux de PHP
- Utiliser gettype() pour vérifier les types
Variables et types en PHP 📦
PHP est un langage a typage dynamique mais avec des regles strictes sur la syntaxe des variables. Apprends a manipuler les differentes donnees.
Declaration des variables
<?php // Pas de mot-clé pour déclarer — on utilise juste $ $nom = "Marie"; // string $age = 22; // integer $moyenne = 15.5; // float $admis = true; // boolean // Les noms de variables : // - Commencent toujours par $ // - Peuvent contenir lettres, chiffres, underscores // - Ne peuvent PAS commencer par un chiffre // - La casse compte ($Nom ≠ $nom) ?>
⚠️ Attention :
$2nomest invalide.$nom_2est valide.
Les types scalaires
<?php // STRING — 3 façons de déclarer $chaine1 = "Double quotes — interprète les variables : $nom"; $chaine2 = 'Single quotes — texte brut, pas d'interprétation'; $chaine3 = <<<EOT Heredoc — multiline avec interprétation : $nom EOT; // INTEGER $decimal = 42; $hexa = 0x2A; // 42 en hexadécimal $octal = 052; // 42 en octal $binaire = 0b101010; // 42 en binaire // FLOAT (nombre à virgule) $pi = 3.14159; $scientific = 1.5e3; // 1500.0 // BOOLEAN $verite = true; $mensonge = false; ?>
Différence entre double et single quotes
<?php $nom = "Alice"; // Double quotes : interprétation des variables echo "Bonjour $nom"; // Bonjour Alice // Single quotes : pas d'interprétation echo 'Bonjour $nom'; // Bonjour $nom (littéral) // Pour les variables dans les single quotes, on concatène : echo 'Bonjour ' . $nom; // Bonjour Alice ?>
💡 Astuce : Les single quotes sont légèrement plus rapides car PHP n'a pas besoin d'analyser le contenu pour chercher des variables.
Tableaux (Arrays)
<?php // Array indexé $fruits = ["pomme", "banane", "cerise"]; echo $fruits[0]; // pomme // Array associatif (comme un objet JS) $personne = [ "nom" => "Dupont", "age" => 30, "ville" => "Paris" ]; echo $personne["nom"]; // Dupont // Tableau multidimensionnel $matrice = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ]; echo $matrice[1][2]; // 6 ?>
Opérations sur les types
<?php // Conversion de type (typecasting) $nombre = "42"; $resultat = (int)$nombre; // 42 (integer) $decimal = (float)$nombre; // 42.0 // Détection de type $val = "hello"; echo is_string($val); // 1 (true) echo is_int($val); // 0 (false) // Type juggling (conversion automatique) echo 5 + "5"; // 10 (string converti en int) echo "5 chevaux" + 2; // 7 (la partie non numérique est ignorée) ?>
⚠️ Piège courant : En PHP,
"5" == 5esttrue(comparaison souple). Utilise===pour la comparaison stricte.
Les constantes
<?php // Avec define() define("PI", 3.14159); echo PI * 2; // 6.28318 // Avec const (disponible depuis PHP 5.6) const MAX_SIZE = 100; // Les constantes n'ont PAS de $ devant echo PI; // Correct echo $PI; // Incorrect — $PI n'existe pas // Constantes magiques echo __LINE__; // Numéro de la ligne actuelle echo __FILE__; // Chemin du fichier actuel echo __DIR__; // Répertoire du fichier actuel echo __FUNCTION__;// Nom de la fonction actuelle ?>
Null et isset()
<?php $variable = null; echo $variable; // rien ne s'affiche var_dump($variable); // NULL // isset() vérifie si une variable existe et n'est pas null $age = 25; echo isset($age); // 1 (true) echo isset($var); // 0 (false) // unset() détruit une variable unset($age); echo isset($age); // 0 (false) ?>
Récapitulatif des types
| Type | Exemple | Vérification |
|---|---|---|
string | "texte" | is_string() |
int | 42 | is_int() |
float | 3.14 | is_float() |
bool | true | is_bool() |
array | [1,2] | is_array() |
null | null | is_null() |
object | new Obj() | is_object() |
Exercice pratique
Crée un script qui :
- Déclare tes informations personnelles (nom, âge, ville, étudiant)
- Affiche un tableau récapitulatif avec
var_dump() - Convertit ton âge en string puis vérifie le résultat
<?php $nom = "Ta valeur"; $age = TonAge; $ville = "Ta ville"; $etudiant = true; var_dump($nom); var_dump($age); var_dump($ville); var_dump($etudiant); // Conversion $ageStr = (string)$age; echo "\nAge en string : " . $ageStr . "\n"; echo "Type : " . gettype($ageStr); ?>
🎯 A retenir : PHP est faiblement typé mais la comparaison stricte (
===) est recommandée. Toujours initialiser ses variables et vérifier leur existence avecisset().
Prochaine leçon : Les conditions en PHP — if, elseif, switch !
⚡ Simulateur — Variables et types
Étape 1/7📝 Pseudo-code
1<?php
2$age = 25;
3$nom = "Alice";
4$prix = 19.99;
5$est_actif = true;
6echo gettype($age);
7echo gettype($nom);
8?>
⚙️ Exécution
📦 Mémoire
Aucune variable
🔀 Flux d'exécution
<?php
3
Début du script
Ouverture du bloc PHP avec <?php.