⊗ppOpTrMP 82 of 107 menu

Metodų prioritetas dirbant su traitais OOP PHP

Jei klasėje ir traite yra to paties pavadinimo metodas, tai klasės metodas perrašys traito metodą:

<?php trait TestTrait { // Metodas su pavadinimu method: public function method() { return 'trait'; } } class TestClass { use TestTrait; // Toks pat metodas su pavadinimu method: public function method() { return 'test'; } } $test = new TestClass; echo $test->method(); // išves 'test' - suveikė paties klasės metodas ?>

Jei pati klasė neturi tokio metodo, bet yra traito metodų ir tėvinės klasės metodų pavadinimų konfliktas, tai traito metodai turi prioritetą:

<?php trait TestTrait { // Metodas su pavadinimu method: public function method() { return 'trait'; } } // Tėvinė klasė: class ParentClass { // Metodas su pavadinimu method: public function method() { return 'parent'; } } // Klasė paveldi metodą method iš tėvinės: class TestClass extends ParentClass { use TestTrait; } $test = new TestClass; echo $test->method(); // išves 'trait', nes traitas turi prioritetą ?>
Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti