Comment redéfinir une méthode de trait en PHP et l'appeler depuis la méthode redéfinie ?
Bonjour à tous ! J'apprends PHP et je suis tombé sur un problème avec les traits. Voici la situation : j'ai un trait `Logger` qui contient une méthode `log($message)`. Cette méthode affiche simplement un message dans la console. Je veux utiliser ce trait dans la classe `UserService`, mais je dois modifier le comportement de la méthode `log` : ajouter un préfixe avec le nom de la classe au message. Cependant, après avoir redéfini la méthode, je n'arrive pas à appeler la version originale du trait.
Voici un exemple de code :
```php
trait Logger {
public function log($message) {
echo "LOG: " . $message . "\n";
}
}
class UserService {
use Logger;
public function log($message) {
// Je veux appeler la méthode parente du trait, mais je ne sais pas comment
// parent::log($message); // Erreur !
echo "[" . __CLASS__ . "] " . $message . "\n";
}
}
$service = new UserService();
$service->log("Utilisateur créé");
```
J'ai essayé d'utiliser `parent::log()`, mais cela ne fonctionne pas — cela génère une erreur. J'ai aussi essayé