Spremembe pravic dostopa do metod lastnosti (trait) v OOP v PHP
Znotraj lastnosti (trait) lahko uporabite kateri koli modifikator
dostopa za metode (to je public, private
ali protected). Po potrebi pa lahko
v samem razredu ta modifikator spremenite
v drugega. Za to v telesu use po
ključni besedi as navedite nov
modifikator.
Poglejmo si s primerom. Recimo, da imamo naslednjo lastnost (trait) z zasebno metodo:
<?php
trait TestTrait
{
private function method()
{
return '!!!';
}
}
?>
Povežimo našo lastnost (trait) z razredom:
<?php
class Test
{
use TestTrait;
}
?>
Spremenimo metodo v razredu v javno:
<?php
class Test
{
use TestTrait {
TestTrait::method as public;
}
}
?>
Preverimo delovanje javne metode zunaj razreda:
<?php
$test = new Test;
echo $test->method(); // izpiše '!!!'
?>