Classes, propriétés et méthodes
Définir une classe PHP avec des propriétés et des méthodes.
Classes, propriétés et méthodes est une leçon PHP Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage PHP Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours PHP Academy comprend 4 leçons au total.
Introduction aux classes PHP
Une classe est un modèle servant à créer des objets. Elle définit des propriétés (les données) et des méthodes (le comportement). Les fonctionnalités OO de PHP rendent le code plus modulaire, réutilisable et facile à maintenir.
Concepts fondamentaux
Concepts clés des classes PHP :
- Utilisez
class ClassName {}pour définir une classe - Les propriétés stockent les données et les méthodes définissent le comportement
- Créez des instances avec
new ClassName() - Accédez aux membres avec la flèche
->
Définir une classe
Exemple :
<?php
class Car {
public string $brand;
public int $year;
public float $price;
public function describe(): string {
return "{$this->year} {$this->brand}";
}
}
$car = new Car();
$car->brand = 'Toyota';
$car->year = 2022;
$car->price = 25000.0;
echo $car->describe(); // 2022 ToyotaModificateurs d’accès
Suite :
<?php
class BankAccount {
public string $owner;
private float $balance;
protected string $currency;
// public: accessible everywhere
// private: only within this class
// protected: this class + subclasses
}Propriétés avec types
Exercice :
<?php
class Product {
public string $name;
public float $price;
public int $stock = 0; // default value
public bool $active = true;
public function inStock(): bool {
return $this->stock > 0;
}
}Méthodes d’instance
Pour aller plus loin :
<?php
class Counter {
private int $count = 0;
public function increment(): void { $this->count++; }
public function decrement(): void { $this->count--; }
public function reset(): void { $this->count = 0; }
public function value(): int { return $this->count; }
}
$c = new Counter();
$c->increment();
$c->increment();
echo $c->value(); // 2Chaînage de méthodes
Utilisation avancée :
<?php
class QueryBuilder {
private string $table = '';
private int $limit = 100;
public function from(string $t): static { $this->table = $t; return $this; }
public function limit(int $n): static { $this->limit = $n; return $this; }
public function build(): string {
return "SELECT * FROM {$this->table} LIMIT {$this->limit}";
}
}
echo (new QueryBuilder())->from('users')->limit(10)->build();Constantes de classe
Modèle concret :
<?php
class HttpStatus {
const OK = 200;
const NOT_FOUND = 404;
const ERROR = 500;
public static function message(int $code): string {
return match($code) {
self::OK => 'OK',
self::NOT_FOUND => 'Not Found',
default => 'Error',
};
}
}
echo HttpStatus::message(HttpStatus::NOT_FOUND); // Not FoundPropriétés readonly (PHP 8.1)
Bonnes pratiques :
<?php
class Point {
public function __construct(
public readonly float $x,
public readonly float $y,
) {}
public function distanceTo(Point $other): float {
return sqrt(($this->x - $other->x) ** 2 + ($this->y - $other->y) ** 2);
}
}
$p1 = new Point(0, 0);
$p2 = new Point(3, 4);
echo $p1->distanceTo($p2); // 5Modèle pratique
Mettons tout cela en pratique avec un modèle concret pour les classes PHP.
Pièges courants
Évitez ces erreurs courantes avec les classes PHP :
- Utilisez les modificateurs d’accès pour encapsuler l’état
- Préférez la promotion du constructeur pour les classes compactes
- Définissez les constantes avec const pour les valeurs fixes
- Utilisez le chaînage de méthodes (interface fluide) pour créer des API lisibles
Vérification rapide
Quel modificateur d’accès rend une propriété accessible uniquement au sein de la classe elle-même ?
Récapitulatif : classes PHP
Vous avez étudié les classes PHP. Voici les points clés à retenir :
- Utilisez les modificateurs d’accès pour encapsuler l’état
- Préférez la promotion du constructeur pour les classes compactes
- Définissez les constantes avec const pour les valeurs fixes
- Utilisez le chaînage de méthodes (interface fluide) pour créer des API lisibles
Questions Fréquemment Posées
La leçon « Classes, propriétés et méthodes » est-elle gratuite ?
Oui — le texte complet de « Classes, propriétés et méthodes » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours PHP Academy, passe à CoddyKit PRO. Le cours PHP Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Classes, propriétés et méthodes » ?
Définir une classe PHP avec des propriétés et des méthodes. Tu pratiques PHP Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer PHP Academy ?
Aucune expérience préalable n'est requise. PHP Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Classes, propriétés et méthodes » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon PHP Academy ?
Oui. Chaque leçon PHP Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Classes, propriétés et méthodes
- Constructeurs et destructeurs
- Propriétés et méthodes statiques
- Présentation des méthodes magiques