Aide-mémoire PHP
Dernière mise à jour
Hello World et balises
Le code PHP vit à l'intérieur des balises <?php ... ?> ; tout ce qui se trouve à l'extérieur est envoyé tel quel en sortie.
| Opération | Syntaxe |
|---|---|
| Ouvrir / fermer PHP | <?php ... ?> |
| Afficher du texte | echo "Hello, World!"; |
| Afficher formaté | printf("%d items", $n); |
| Echo court (en HTML) | <?= $name ?> |
| Commentaire sur une ligne | // comment ou # comment |
| Commentaire en bloc | /* comment */ |
| Terminateur d'instruction | ; |
| Exécuter un fichier (CLI) | php index.php |
Variables et types
Les variables commencent par $ et sont typées dynamiquement.
| Opération | Syntaxe |
|---|---|
| Déclarer une variable | $name = "Ada"; |
| Constante | const PI = 3.14; ou define("PI", 3.14); |
| Types scalaires | int, float, string, bool |
| Null | $x = null; |
| Vérifier le type | gettype($x), is_int($x), is_array($x) |
| Convertir un type | (int) $str, (string) $num |
| Variable existe / définie | isset($x), empty($x) |
| Interpolation de chaîne | echo "Hi $name"; |
Chaînes
Les guillemets doubles interpolent les variables ; les guillemets simples sont littéraux.
| Opération | Syntaxe |
|---|---|
| Concaténer | $a . $b |
| Longueur | strlen($s) |
| Majuscules / minuscules | strtoupper($s), strtolower($s) |
| Sous-chaîne | substr($s, 0, 5) |
| Trouver une position | strpos($s, "x") |
| Remplacer | str_replace("a", "b", $s) |
| Découper en tableau | explode(",", $csv) |
| Joindre un tableau | implode(",", $arr) |
| Supprimer les espaces | trim($s) |
| Formater une chaîne | sprintf("%05.2f", $n) |
Tableaux (y compris associatifs)
Un seul type de tableau couvre à la fois les listes indexées et les maps clé-valeur.
| Opération | Syntaxe |
|---|---|
| Tableau indexé | $nums = [1, 2, 3]; |
| Tableau associatif | $user = ["name" => "Ada", "age" => 30]; |
| Accéder à un élément | $nums[0], $user["name"] |
| Ajouter | $nums[] = 4; |
| Définir une clé | $user["role"] = "admin"; |
| Longueur | count($nums) |
| Vérifier une clé | isset($user["name"]), array_key_exists("name", $user) |
| Retirer un élément | unset($nums[1]); |
| Fusionner des tableaux | array_merge($a, $b) |
| Itérer clé => valeur | foreach ($user as $k => $v) { ... } |
Contrôle de flux
Les conditions et les boucles suivent une syntaxe de style C.
| Opération | Syntaxe |
|---|---|
| If / elseif / else | if ($x > 0) { ... } elseif (...) { ... } else { ... } |
| Ternaire | $y = $x > 0 ? "pos" : "neg"; |
| Coalescence des nuls | $name = $_GET["name"] ?? "guest"; |
| Switch | switch ($day) { case 1: ...; break; default: ... } |
| Boucle for | for ($i = 0; $i < 10; $i++) { ... } |
| Boucle while | while ($x < 100) { ... } |
| Foreach | foreach ($items as $item) { ... } |
| Expression match | $r = match($x) { 1 => "one", default => "?" }; |
| Break / continue | break;, continue; |
Fonctions
Les fonctions peuvent déclarer des types, des valeurs par défaut et des paramètres variadiques.
| Opération | Syntaxe |
|---|---|
| Fonction de base | function add($a, $b) { return $a + $b; } |
| Paramètres et retour typés | function add(int $a, int $b): int { ... } |
| Valeur par défaut | function greet($name = "guest") { ... } |
| Paramètres variadiques | function sum(...$nums) { ... } |
| Passage par référence | function inc(&$x) { $x++; } |
| Fonction anonyme | $f = function($x) { return $x * 2; }; |
| Fonction fléchée | $f = fn($x) => $x * 2; |
| Utiliser une variable externe | function() use ($n) { ... } |
Superglobales
Tableaux intégrés disponibles dans toutes les portées, principalement pour les données de requête.
| Superglobale | Ce qu'elle contient |
|---|---|
$_GET | Paramètres de la chaîne de requête de l'URL |
$_POST | Données de formulaire envoyées via POST |
$_REQUEST | Combinaison de $_GET, $_POST et $_COOKIE |
$_SESSION | Données de session par utilisateur (après session_start()) |
$_COOKIE | Cookies envoyés par le navigateur |
$_SERVER | Infos serveur et requête (REQUEST_METHOD, etc.) |
$_FILES | Métadonnées des fichiers téléversés |
$_ENV | Variables d'environnement |
Fonctions de tableau courantes
PHP fournit des centaines d'utilitaires de tableau ; voici les indispensables.
| Fonction | Ce qu'elle fait |
|---|---|
array_map($fn, $arr) | Transformer chaque élément |
array_filter($arr, $fn) | Conserver les éléments où le callback est vrai |
array_reduce($arr, $fn, $init) | Réduire à une seule valeur |
in_array($v, $arr) | Vérifier si une valeur est présente |
array_keys($arr) / array_values($arr) | Obtenir les clés ou les valeurs |
sort($arr) / rsort($arr) | Trier sur place (croissant / décroissant) |
usort($arr, $cmp) | Trier avec un comparateur personnalisé |
array_slice($arr, 1, 3) | Extraire une portion |
array_push($arr, $v) / array_pop($arr) | Ajouter / retirer à la fin |
Classes et POO
PHP prend en charge les classes, l'héritage, les interfaces et les modificateurs de visibilité.
| Opération | Syntaxe |
|---|---|
| Définir une classe | class User { ... } |
| Propriété avec visibilité | public string $name; |
| Constructeur | function __construct($name) { $this->name = $name; } |
| Promotion de constructeur | function __construct(public string $name) {} |
| Créer une instance | $u = new User("Ada"); |
| Accéder à un membre | $u->name, $u->save() |
| Membre statique | User::$count, User::create() |
| Héritage | class Admin extends User { ... } |
| Interface | interface Saveable { public function save(); } |
| Implémenter une interface | class User implements Saveable { ... } |
La syntaxe PHP que vous utilisez le plus, sur une seule page. Cet aide-mémoire PHP est une référence rapide pour le cœur du langage - variables et types, chaînes, tableaux (y compris les tableaux associatifs), contrôle de flux, fonctions, les superglobales comme $_GET et $_POST, et les classes.
Tout ce qui figure ici est du PHP standard qui s'exécute sur les versions modernes. Copiez ce dont vous avez besoin, ou essayez chaque extrait en direct dans le playground PHP - aucun serveur à configurer.
FAQ de l'aide-mémoire PHP
Cet aide-mémoire PHP est-il gratuit ?
Quelle est la différence entre == et === en PHP ?
== est la comparaison faible : elle convertit les opérandes en un type commun avant de comparer, donc 0 == "0" et même 0 == "" peuvent se comporter de façon surprenante selon les versions. === est la comparaison stricte : elle ne renvoie vrai que lorsque les valeurs sont égales et du même type, donc 0 === "0" est faux. Préférez === pour éviter les bugs de jonglage de types.Que sont les tableaux associatifs en PHP ?
["name" => "Ada", "age" => 30]. PHP possède un seul type de tableau qui fait à la fois office de liste ordonnée et de map clé-valeur, vous accédez donc aux valeurs par clé avec $user["name"] et vous itérez avec foreach ($user as $key => $value).