Промене права приступа методама трејтова у ООП-у у PHP-у
Унутар трејта се може користити било који модификатор
приступа за методе (то jest public, private
или protected). По потреби, међутим,
у самој класи се овај модификатор може променити
на други. За то у телу use после
кључне речи as треба навести нови
модификатор.
Погледајмо на примеру. Нека имамо следећи трејт са приватним методом:
<?php
trait TestTrait
{
private function method()
{
return '!!!';
}
}
?>
Прикључимо наш трејт класи:
<?php
class Test
{
use TestTrait;
}
?>
Променимо у класи метод на јавни:
<?php
class Test
{
use TestTrait {
TestTrait::method as public;
}
}
?>
Проверимо рад јавног метода изван класе:
<?php
$test = new Test;
echo $test->method(); // исписаће '!!!'
?>