Kāda ir atšķirība starp publisko, privāto un aizsargāto PHP?

Kada Ir Atskiriba Starp Publisko Privato Un Aizsargato Php



PHP tiek plaši izmantots dinamisku vietņu un tīmekļa lietojumprogrammu izstrādei. PHP nodrošina atslēgvārdus, kas pazīstami kā piekļuves modifikatori . Piekļuves modifikatora rekvizīti tiek izmantoti, lai piekļūtu mainīgā, klases vai klases rekvizītiem trīs dažādos veidos, piemēram, publiski , Privāts, un aizsargāts . Šajā rakstā mēs apspriedīsim šos piekļuves modifikatorus un noteiksim atšķirību starp šiem trim piekļuves modifikatoriem PHP programmēšanas valodā.

Kas ir piekļuves pārveidotāji PHP?

PHP piekļuves modifikatori ir būtiski, jo tie dod lietotājiem iespēju regulēt klases atribūtu un metožu redzamību, kā arī pieejamību. Tā rezultātā tas nodrošina iekapsulēšanu un datu drošību, un līdz ar to klases dalībnieki ir aizsargāti pret nesankcionētu piekļuvi vai izmaiņām. Turklāt tas atvieglo koda uzturēšanu un atkļūdošanu.







Piekļuves modifikatoru veidi

Tālāk ir apskatīti trīs piekļuves modifikatori, kas pastāv PHP:



  • Publisks: Jūs varat piekļūt publiskai metodei ārpus klases. Tas nozīmē, ka jebkurš kods var piekļūt publiskai metodei, to mainīt un izsaukt.
  • Privāts: Piekļuve privātajai metodei ir ierobežota ar pašu klasi. Tas nozīmē, ka nevienam no citiem kodiem, pat ja tā ir pakārtota klase, nav atļauts piekļūt privātai metodei vai lasīt privāto vērtību.
  • Aizsargāts: Aizsargāta metode ir pieejama tikai klasē un klasēs, kas ir ar to saistītas; to nevar izmantot ārpus šīm klasēm. Jebkurš avota kods, kam nepieciešams piekļūt klases instancei, var nolasīt vai mainīt aizsargātā īpašuma datus vai izsaukt aizsargātu funkciju.

Atšķirība starp publiskajiem, privātajiem un aizsargātās piekļuves pārveidotājiem PHP

Īpašums Publisks Privāts Aizsargāts
Pieejamība Šie piekļuves modifikatori var būt pieejami jebkurā vietā, piemēram, koda iekšpusē un ārpusē. Privātās piekļuves specifikācijas ir pieejamas tikai klasē. Tas varētu būt pieejams klasē un ar to saistītajās (bērnu) klasēs un metodēs.
Elastīgums Vislielāko elastību piedāvā publiskie resursi, jo tiem var piekļūt no jebkuras vietas. Tā kā tās ir pieejamas tikai klasē, šīs metodes piedāvā vismazāko elastību. Aizsargātā metode nodrošina mērenu elastību, jo bērnu klases var piekļūt šīm metodēm.
Iekapsulēšana Cits kods var piekļūt vai iekapsulēt publiskās metodes, taču programmētājs to kontrolē. Klasē ir iekapsulēta privātā metode, kas padara neiespējamu ārējam kodam tiem piekļūt vai atjaunināt. Tās iekapsulēšanas process ir tāds pats kā publiskajai PHP metodei.
Drošība Publiskās metodes ir pieejamas no jebkuras vietas. Tātad tie nodrošina zemu drošības līmeni kodā. Maksimālo drošības līmeni nodrošina privātie piekļuves modifikatori, jo tie ir pilnībā ietverti klasē. Tā kā tiem var piekļūt tikai klases un tās apakšklases dalībnieki, aizsargātie piekļuves modifikatori piedāvā saprātīgu drošības līmeni.

Apskatīsim atšķirību starp šiem piekļuves norādītājiem, izmantojot vienkāršu programmas piemēru PHP.



Piemērs: PHP programma ar privātiem, publiskiem un aizsargātas piekļuves pārveidotājiem





Šis piemērs parāda atšķirību starp publisko, privāto un aizsargāto vienā parauga kodā:

< ?php
klase MyClass {
publiski $publisks = 'Publisks mainīgais. \n ' ; // Var piekļūt no jebkuras vietas
Privāts $ privāts = 'Privātais mainīgais. \n ' ; // Var piekļūt tikai no klases
aizsargāts $aizsargāts = 'Aizsargāts mainīgais.' ; // Var piekļūt klasē un jebkurā apakšklasē

publiski funkciju getPrivate ( ) {
atgriezties $this - > Privāts;
}

publiski funkciju getProtected ( ) {
atgriezties $this - > aizsargāts;
}
}
$obj = jauns MyClass ( ) ;

atbalss $obj - > publisks;
atbalss $obj - > getPrivate ( ) ;
atbalss $obj - > getProtected ( ) ;
? >



Iepriekš minētajā programmā mēs definējām klasi kā Mana klase ar publisku īpašumu kā $publisks kas varētu piekļūt jebkur kodā, privātīpašums kā $ privāts , un aizsargājamais īpašums ar nosaukumu $aizsargāts , tāpēc mēs nevaram piekļūt privātiem un aizsargātiem norādītājiem tieši no ārpuses. Kā mēs izmantojām divas publiskas metodes, ko sauc getPrivate() un getProtected () kas atgriež attiecīgi privāto un aizsargāto īpašumu mainīgo vērtības, un izvade ir norādīta tālāk:

Secinājums

PHP piedāvā daudzas funkcijas, un viena no tām ir atslēgvārdi, ko sauc par piekļuves modifikatoriem. Šie piekļuves modifikatori nodrošina dažādus piekļuves modeļus PHP programmas klašu datiem. Iepriekš minētajā apmācībā mēs esam redzējuši atšķirību starp piekļuves modifikatoriem attiecībā uz pieejamību, iekapsulēšanu, elastību un drošību, kas tiek piedāvāti PHP.