Sissejuhatus PHP-i pääsemoodulitesse

Juurdepääsu modifikaator on viis, mille abil saame PHP-s määrata kõigi muude identifikaatorite muutujatele juurdepääsetavuse ulatuse ja õigused. PHP toetab mitmesuguseid märksõnu, et muuta iga muutuja, et pääseda juurde igale muutujale ja identifikaatoritele. Neid märksõnu saame omistada klassile, funktsioonile või identifikaatoritele. Need märksõnad - avalik, privaatne, kaitstud, abstraktne, lõplik jne.

Millal kasutada juurdepääsu muutjaid PHP-s?

Erinevalt Java'st on PHP-l oma juurdepääsu modifikaatoril mõned piirangud. Me ei saa kasutada kõiki PHP-juurdepääsu muutjaid klassi tasemel, funktsioonide tasemel ja identifikaatori tasemel. Saame neid juurdepääsu modifikaatoreid kasutada vastavalt vajadusele, mille kohaselt peame kogu programmi või rakenduse jooksul luba andma või loa tühistama.

Siin on loetelu modifikaatorid ja kas see on kohaldatav või mitte:

Juurdepääsu modifikaatorKlassi taseFunktsiooni taseMuutuv tase
avalikNAJAHJAH
privaatneNAJAHJAH
kaitstudNAJAHJAH
abstraktneJAHJAHNA
lõplikJAHJAHNA
StaatilineNAJAHJAH

Ülaltoodud jutus tähistab NA mittekohaldatavat. See tähendab, et me ei saa klassitasemel avalikku, privaatset ja kaitset kasutada. Me saame kasutada abstraktset ja lõplikku ainult klassi tasemel.

Mitmesugused juurdepääsu modifikaatorid PHP-s

Allpool on toodud järgmised PHP-i juurdepääsu muutjad

1. Avaliku juurdepääsu muutja

Avalikkus on vaikimisi modifikaator nagu Java PHA-s. See tähendab, et kui me vaikimisi ei kasuta ühtegi identifikaatorite funktsioonidega modifikaatorit, loetakse seda avaliku juurdepääsu modifikaatoriks. See on üks kõige laialdasemalt kasutatavaid. Kui funktsiooni koodi taaskasutatavuse juurde jõuame, läheme tavaliselt avaliku juurdepääsu modifikaatorisse. Kuna avalikkust saab kindlasti kasutada kõikjal, klassis, väljaspool klassi, laiendatud klassis ja kui seda taaskasutatavat avalikkust ei piirata ühegi klassiga, võime seda kasutada kõikjal, kuhu faili lisame. Nagu ülaltoodud tabelis mainitud, ei saa me seda avalikku modifikaatorit klassiga koos privaatse ja kaitstudga kasutada.

Nüüd on aeg vaadata avaliku juurdepääsu muutja näidet:

<_?php
class MyAccess (
var $var = "This is first var";
// print var variable value
function returnVar() (
echo $this->var;
)
)
$obj1 = new MyAccess();$obj1->returnVar();
?>

Ülaltoodud koodis on defineeritud funktsioon returnVar (), millel pole juurdepääsu modifikaatorit, seega töötab see avalikuna, kuna see on PHP-i vaikemuundur.

avalik, privaatne ja kaitstud ei ole klassi tasemel rakendatav, vaatame seda näitega.

<_?php
class public MyAccess (
var $var = "This is first var";
function returnVar() (
echo $this->var;
)
)
$obj1 = new MyAccess();
$obj1->returnVar();
?>

Ülaltoodud kood annab vea, nagu allpool mainitud:

(!) Parsimisviga: süntaksiviga, ootamatu „avalik” (T_PUBLIC), oodates identifikaatorit (T_STRING) E: \ wamp \ www \ twit \ index.php real 2. real

See jääb samaks ka era- ja kaitstud isikutele.

<_?php
class private MyAccess (
var $var = "This is first var";
)
?>
class protected MyAccess (
var $var = "This is first var";
)
?>
<_?php
class private MyAccess (
var $var = "This is first var";
)
?>
class protected MyAccess (
var $var = "This is first var";
)
?>

2. Privaatse juurdepääsu muutja

See modifikaator annab meile privaatse märksõna, mida sellega töödelda. Me ei saa klassiga privaatset modifikaatorit kasutada. Saame seda kasutada ainult klassimuutujate ja klassimeetoditega (nagu oleme ülaltoodud tabelis maininud). Kui kuulutame ja kasutame privaatset, ei saa sellele klassi objekti kaudu juurde pääseda. Seda saab kasutada ainult klassis.

Näiteks

<_?php
class MyAccess (
var $var = "This is first var";
private $fist_name;
// simple class method
function returnVar() (
echo $this->fist_name;
)
function set_fist_name($set_this)(
$this->fist_name = $set_this;
)
)
$obj1 = new MyAccess();
echo $obj1->fist_name; // will give the error
$obj1->set_fist_name("Jai Shre");
$obj1->returnVar();
?>
echo $obj1->fist_name; // will give the error

Sellel koodireal, mida saame kasutada, ilmneb tõrge. See on midagi, millele me selle klassi objekti kasutades privaatsele muutujale juurde ei pääse. Kuid me võime seda kasutada, kasutades selle seadistust ja getter-meetodit, nagu me kasutame ülaltoodud koodi. $ obj1-> set_fist_name (“Jai Shre”); koodirida seab muutuja väärtuse ja kasutades nuppu $ obj1-> returnVar (); saame määratud muutuja väärtuse.

3. Kaitstud juurdepääsu modifikaator

Nii nagu avalik ja privaatne, ei toeta ka kaitstud end klassi tasemel. Nagu privaatne modifikaator, piirab kaitstud ka klassi muutujate või funktsioonide juurdepääsu klassist väljapoole. Seda saab kasutada samas klassis ja alaklassist (lasteklass).

Näiteks

<_?php
class MyAccess (
var $var = "This is first var";
protected $fist_name;
// simple class method
function returnVar() (
echo $this->fist_name;
)
function set_fist_name($set_this)(
$this->fist_name = $set_this;
)
)
class child extends MyAccess (
function setVal($set_this)(
$this->fist_name = $set_this;
)
function getVal()(
echo $this->fist_name;
)
)
$obj1 = new child();
//echo $obj1->fist_name; // will give the error
$obj1->setVal("Jai Shre");
$obj1->getVal();
?>

echo $ obj1-> rusikas_nimi; koodireal kuvatakse järgmine tõrge

Väljund:

Saatuslik viga: kaitstud atribuudile ei pääse juurde MyAccess :: $ fist_name kataloogis E: \ wamp \ www \ twit \ index.php 20. real

4. Abstraktse juurdepääsu modifikaator

Seda saab kasutada klassil ja funktsioonil, mitte klassimuutujal. Kui mõnel klassil on vähemalt üks abstraktne funktsioon, tuleb see kuulutada abstraktseks. Me ei saa abstraktset klassi kiirendada. Abstraktset klassi peetakse peamiselt mittetäielikuks klassiks.

5. Lõplik juurdepääsu muutja

Kui mõni klass kuulutatakse lõplikuks, ei saa me seda klassi pikendada. PHP piirab lõpuklassi pärimist.

6. Staatilise juurdepääsu modifikaator

Staatilist märksõna saab kasutada mis tahes funktsiooni muutmiseks staatiliseks. See võimaldab selle funktsiooni funktsiooni, nii et seda saab kasutada selle klassi objekti loomisel, milles see on deklareeritud. Staatilise meetodi näide -

public static function static Function()
(
// declaration goes here..
)

Järeldus

Peaksime alati kasutama juurdepääsu modifikaatorit vastavalt ärinõuetele. Kasutades privaatset ja kaitstud, saame piirata privaatsete muutujate ja privaatsete meetodite otsest kasutamist väljastpoolt deklareeritud klassi.

Soovitatavad artiklid

See on juhend pääsemuunduritele PHP-s. Siin käsitleme PHP-s mitmesuguseid juurdepääsu modifikaatoreid koos näidete ja väljunditega. Lisateabe saamiseks võite vaadata ka järgmist artiklit -

  1. Abstraktne klass PHP-s
  2. Mustrid PHP-s
  3. PHP-lülituse avaldus
  4. Muutujad PHP-s
  5. C märksõnad
  6. C # märksõnad
  7. Staatiline meetod PHP-s
  8. Staatiline märksõna C-s
  9. Lülita avaldus C # -s
  10. C-klassi abstraktklassi täielik juhend
  11. JavaScripti staatilise meetodi täielik juhend

Kategooria: