Magic Methods

PHP 🟡 Mid

Définition

Méthodes spéciales prefixees par __ (__construct, __get, __set, __toString, etc.) appelées automatiquement par PHP dans certaines situations.

Analogie

Comme les réflexes du corps : ils se déclenchent automatiquement en réaction a un stimulus, sans y penser.

Exemple de code

class Config {
  private array $data = [];
  public function __get(string $key): mixed {
    return $this->data[$key] ?? null;
  }
  public function __set(string $key, mixed $val): void {
    $this->data[$key] = $val;
  }
}

Cas d'usage

Pour créer des APIs fluides, du lazy loading ou des wrappers dynamiques.

Anti-pattern

Abuser de __get/__set pour tout rendre magique, rendant le code impredictible et non analysable par les IDE.
#core#interview#oop

← → au clavier pour passer d'une fiche à l'autre