Lai atjauninātu PHP klases privātīpašuma vērtību, mums ir jāizmanto getter un setter metodes. Privātie īpašumi nav tieši pieejami ārpus klases, tāpēc mums klasē ir jādefinē publiskās metodes, lai mainītu to vērtības.
Vispirms apskatīsim vienkāršu klasi ar nosaukumu "Persona" ar privāto īpašumu ar nosaukumu "vārds":
class Person { private $name; public function getName() { return $this->name; } public function setName($name) { $this->name = $name; } }
Iepriekš minētajā piemērā privātais īpašums $name ir pieejams tikai pašā klasē. Lai piekļūtu tā vērtībai un mainītu to, esam definējuši divas publiskas metodes: getName() un setName($name).
Metode "getName()" ir ieguvēja metode, kas atgriež privātā īpašuma "$name" vērtību. Tas nemaina vērtību, bet ļauj mums to izgūt.
Metode setName($name) ir iestatītāja metode, kas izmanto argumentu $name un piešķir to privātajam īpašumam $name. Tas ļauj mums atjaunināt privātīpašuma vērtību ārpus klases.
Šeit ir piemērs, kā mēs varam izmantot šīs ieguves un iestatītāja metodes, lai atjauninātu privātā īpašuma vērtību:
$person = new Person(); $person->setName("John Doe"); echo $person->getName(); // Output: John Doe $person->setName("Jane Smith"); echo $person->getName(); // Output: Jane Smith
Iepriekš minētajā piemērā mēs izveidojam jaunu klases "Persona" gadījumu un iestatām nosaukumu, izmantojot metodi "setName()". Pēc tam mēs izgūstam atjaunināto nosaukumu, izmantojot metodi “getName()”, un parādām to.
Izmantojot getter un setter metodes, mēs varam nodrošināt, ka klases privātajiem īpašumiem tiek piekļūts un tie tiek mainīti kontrolētā veidā. Šī iekapsulēšana palīdz saglabāt klases integritāti un novērš tiešas manipulācijas ar privātiem īpašumiem no ārpuses.
Lai atjauninātu privātā īpašuma vērtību klasē PHP, mums klasē ir jādefinē publiskās ieguves un iestatītāja metodes. Gettera metode izgūst privātā īpašuma vērtību, savukārt setera metode ļauj mainīt tā vērtību. Izmantojot šīs metodes, mēs varam kontrolēti atjaunināt privāto īpašumu.
Citi jaunākie jautājumi un atbildes par Klases un objekti PHP:
- Kāda ir ieteicamā pieeja klases rekvizītu piekļuvei un modificēšanai?
- Kāds ir ieguvums no getteru un seteru izmantošanas klasē?
- Kā mēs varam piekļūt privātā īpašuma vērtībai klasē?
- Kāds mērķis ir padarīt īpašumus klases privātus?
- Kas ir konstruktora funkcija PHP klasēs un kāds ir tās mērķis?
- Kas ir metodes PHP klasēs un kā mēs varam definēt to redzamību?
- Kas ir rekvizīti PHP klasēs un kā mēs varam definēt to redzamību?
- Kā mēs izveidojam objektu no klases PHP?
- Kas ir PHP klase un kādam nolūkam tā kalpo?