⊗ppOpMgGP 88 of 107 menu

Upataji wa Sifa Kupitia Uchawi katika OOP katika PHP

Mbinu ya kichawi inayofuata, ambayo tuta chambua pamoja, inaitwa __get. Hii mbinu hufanya kazi wakati wa kujaribu kusoma thamani ya sifa ya faragha au iliyolindwa.

Ikiwa utatekeleza mbinu __get katika darasa lolote, basi matajio yote kwa sifa zisizopo au zilizofichwa yatawashiwa na mbinu hii.

Wakati huo huo PHP automatikali itapeleka jina la sifa iliyohitajika kwenye kigezo cha kwanza cha mbinu hii, na thamani iliyorudishwa na mbinu hii itachukuliwa kama thamani ya sifa ambayo imehusiwa.

Yaelekea haijaeleweka vizuri bado jinsi hii inavyofanya kazi, kwa hivyo hebu tuangalie kwa mfano wa vitendo. Hebu tuseme tuna darasa Test kama hili lenye sifa ya faragha na ya umma:

<?php class Test { public $prop1 = 1; // sifa ya umma private $prop2 = 2; // sifa ya faragha } ?>

Hebu tuongeze kwenye darasa letu mbinu ya kichawi __get, ambayo kwa mara ya kwanza itakuwa tu inakarudi jina la sifa ambayo imehusiwa:

<?php class Test { public $prop1 = 1; private $prop2 = 2; public function __get($property) { return $property; // tu rudishe jina la sifa } } ?>

Hebu tuangalie utendaji wa mbinu ya kichawi iliyoundwa. Tuweke wazi kwa aina tatu za sifa: kwa sifa ya umma, kwa sifa ya faragha na kwa sifa isiyopo:

<?php $test = new Test; // Tunaweka wazi kwa sifa ya umma: echo $test->prop1; // itaonyesha 1 - yaani thamani ya sifa // Tunaweka wazi kwa sifa ya faragha: echo $test->prop2; // itaonyesha 'prop2' - jina la sifa // Tunaweka wazi kwa sifa isiyopo: echo $test->prop3; // itaonyesha 'prop3' - jina la sifa ?>

Kama unavyoona, mbinu yetu ya kichawi humenyuka kwa kushughulikia sifa za faragha na zisizopo lakini hupuuzia kushughulikia sifa za umma - zinaendelea kufanya kazi, kama zilivyokuwa zikifanya zamani.

Kiswahili
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Tunatumia kuki kwa ajili ya uendeshaji wa tovuti, uchambuzi na ubinafsishaji. Usindikaji wa data unafanyika kulingana na Sera ya Faragha.
kubali yote sanidi kataa