Perubahan Hak Akses kepada Kaedah Trait dalam OOP PHP
Di dalam trait, anda boleh menggunakan sebarang pengubah suai
akses untuk kaedah (iaitu public, private
atau protected). Jika perlu, walau bagaimanapun,
dalam kelas itu sendiri, pengubah suai ini boleh diubah
kepada yang lain. Untuk ini, dalam badan use selepas
kata kunci as, anda perlu menentukan
pengubah suai baru.
Mari lihat contoh. Katakan kita mempunyai trait berikut dengan kaedah peribadi:
<?php
trait TestTrait
{
private function method()
{
return '!!!';
}
}
?>
Sambungkan trait kami ke kelas:
<?php
class Test
{
use TestTrait;
}
?>
Mari ubah kaedah kepada awam dalam kelas:
<?php
class Test
{
use TestTrait {
TestTrait::method as public;
}
}
?>
Mari semak kerja kaedah awam dari luar kelas:
<?php
$test = new Test;
echo $test->method(); // akan memaparkan '!!!'
?>