<?php
trait HelloWorld {
public function sayHello() {
echo 'Hello World!';
}
}
// Modification de la visibilité de la méthode sayHello
class MyClass1 {
use HelloWorld { sayHello as public; }
}
// Utilisation d'un alias lors de la modification de la visibilité
// La visibilité de la méthode sayHello n'est pas modifiée
class MyClass2 {
use HelloWorld { sayHello as private myPrivateHello; }
}
$class1 = new MyClass1();
$class2 = new MyClass2();
echo $class1->sayHello();
echo $class2->sayHello();