Če želite posodobiti vrednost zasebne lastnosti v razredu v PHP, moramo uporabiti metodi getter in setter. Zasebne lastnosti niso neposredno dostopne zunaj razreda, zato moramo znotraj razreda definirati javne metode, da spremenimo njihove vrednosti.
Najprej si oglejmo preprost razred z imenom "Person" z zasebno lastnostjo z imenom "name":
class Person { private $name; public function getName() { return $this->name; } public function setName($name) { $this->name = $name; } }
V zgornjem primeru je zasebna lastnost `$name` dostopna samo znotraj samega razreda. Za dostop in spreminjanje njegove vrednosti smo definirali dve javni metodi: `getName()` in `setName($name)`.
Metoda `getName()` je metoda pridobivanja, ki vrne vrednost zasebne lastnosti `$name`. Ne spremeni vrednosti, vendar nam omogoča, da jo pridobimo.
Metoda `setName($name)` je metoda nastavitve, ki sprejme argument `$name` in ga dodeli zasebni lastnini `$name`. To nam omogoča posodobitev vrednosti zasebne lastnine zunaj razreda.
Tukaj je primer, kako lahko uporabimo te metode pridobivanja in nastavljanja za posodobitev vrednosti zasebne lastnosti:
$person = new Person(); $person->setName("John Doe"); echo $person->getName(); // Output: John Doe $person->setName("Jane Smith"); echo $person->getName(); // Output: Jane Smith
V zgornjem primeru ustvarimo nov primerek razreda `Person` in nastavimo ime z uporabo metode `setName()`. Nato z metodo `getName()` pridobimo posodobljeno ime in ga prikažemo.
Z uporabo metod getter in setter lahko zagotovimo, da so zasebne lastnosti razreda dostopne in spremenjene na nadzorovan način. Ta enkapsulacija pomaga ohranjati celovitost razreda in preprečuje neposredno manipulacijo zasebnih lastnosti zunaj razreda.
Če želite posodobiti vrednost zasebne lastnosti v razredu v PHP, moramo znotraj razreda definirati javne metode pridobivanja in nastavljanja. Metoda getter pridobi vrednost zasebne lastnosti, medtem ko nam metoda setter omogoča spreminjanje njene vrednosti. Z uporabo teh metod lahko nadzorovano posodobimo zasebno lastnino.
Druga nedavna vprašanja in odgovori v zvezi Predavanja in cilji v PHP:
- Kakšen je priporočen pristop za dostop do in spreminjanje lastnosti v razredu?
- Kakšna je prednost uporabe pridobivalnikov in nastavljalcev v razredu?
- Kako lahko dostopamo do vrednosti zasebne lastnine v razredu?
- Kakšen je namen, da lastnosti v razredu postanejo zasebne?
- Kaj je funkcija konstruktorja v razredih PHP in kakšen je njen namen?
- Kaj so metode v razredih PHP in kako lahko definiramo njihovo vidnost?
- Kaj so lastnosti v razredih PHP in kako lahko definiramo njihovo vidnost?
- Kako ustvarimo predmet iz razreda v PHP?
- Kaj je razred v PHP in čemu služi?