Читање на непостоечко својство во ООП во PHP
Во примерот даден во претходната лекција, ја применувавме магијата на методот
__get за фаќање на пристапувањето до
приватни својства. Всушност овој метод
исто така може да биде корисен за фаќање на
пристапувања до непостоечки својства.
Да погледнеме на практичен пример. Нека
имаме класа User со име и
презиме, кои се јавни
својства:
<?php
class User
{
public $surn;
public $name;
}
?>
Ајде да направиме така што објектот од класата
да се однесува како да има и својство
full, кое ги прикажува името и презимето на корисникот.
Да го искористиме за ова нашиот магичен метод
__get:
<?php
class User
{
public $surname;
public $name;
public $patronymic;
public function __get($property)
{
if ($property == 'full') {
return $this->surn . ' ' . $this->name;
}
}
}
?>
Да го провериме:
<?php
$user = new User;
$user->surn = 'john';
$user->name = 'smit';
echo $user->full; // ќе испечати 'john smit'
?>
Направете класа Date со јавни својства
year, month и day.
Со помош на магија направете својство weekDay,
кое ќе го враќа денот од неделата, кој одговара на
датумот.