НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
⊗ppOpTrARC 81 of 107 menu

Изменения прав доступа к методам трейта в ООП в PHP

Внутри трейта можно использовать любой модификатор доступа для методов (то есть 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(); // выведет '!!!' ?>
Русский
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить