Kusoma Sifa Isiyopo katika OOP kwenye PHP
Katika mfano ulioletwa katika somo lilopita, tulitumia uchawi wa mbinu
__get kuwakamata marejeo kwa
sifa za kibinafsi. Kweli mbinu hii
pia inaweza kuwa muhimu kuwakamata
marejeo kwa sifa zisizopo.
Tuangalie kwa mfano wa vitendo. Hebu
tuwe na darasa User na jina na
jina la ukoo, ambayo ni sifa za
umma:
<?php
class User
{
public $surn;
public $name;
}
?>
Wacha tufanye ili kitu cha darasa
kiendeleee kana kwamba pia kina sifa
full, ikitoa jina na jina la ukoo la mtumiaji.
Tutumie kwa hili mbinu yetu ya kichawi
__get:
<?php
class User
{
public $surname;
public $name;
public $patronymic;
public function __get($property)
{
if ($property == 'full') {
return $this->surn . ' ' . $this->name;
}
}
}
?>
Tukagalie:
<?php
$user = new User;
$user->surn = 'john';
$user->name = 'smit';
echo $user->full; // itatoa 'john smit'
?>
Fanya darasa Date lenye sifa za umma
year, month na day.
Kwa kutumia uchawi fanya sifa weekDay,
ambayo itarudisha siku ya wiki, inayofanana na
tarehe.