Усулҳои муҳофизатшуда дар ООП дар PHP
PHP усулҳои муҳофизатшударо тавассути
тағйирдиҳандаи protected дастгирӣ мекунад.
Чунин усулҳо мерос гирифта мешаванд,
аммо аз беруни синф дида намешаванд.
Биёед бубинем, ки ин чӣ тавр кор мекунад. Синфи волидайн бо усули муҳофизатшуда менависем:
<?php
class User {
public function setName($name) {
$this->name = $name;
}
public function getName() {
return $this->capeFirst($this->name);
}
protected function capeFirst($str) {
return ucfirst($str);
}
}
?>
Аз ин усули муҳофизатшуда дар синфи фарзанд истифода барем:
<?php
class Student extends User {
public function setSurn($surn) {
$this->surn = $surn;
}
public function getSurn() {
return $this->capeFirst($this->surn);
}
}
?>
Дар рамзи зерин усули ёрирасонро муҳофизатшуда кунед:
<?php
class User {
public function setName($name) {
if ($this->notEmpty($name)) {
$this->name = $name;
}
}
public function getName() {
return $this->name;
}
public function notEmpty($str) {
return strlen($str) > 0;
}
}
class Employee extends User {
public function setSurn($surn) {
if ($this->notEmpty($surn)) {
$this->surn = $surn;
}
}
public function getSurn() {
return $this->surn;
}
}
?>