Sifa za Kifedha katika OOP katika PHP
Sifa za kitu ambazo zinaweza kusomwa na kuandikwa kutoka nje, huitwa sifa za umma. Kuna pia sifa za kifedha, ambazo zitapatikana tu ndani ya darasa.
Majina ya sifa za kifedha yanahitaji
kutangazwa na kiwakilishi cha upatikanaji private.
Hebu tufanye hivi:
<?php
class User {
private $name;
}
?>
Sasa tuandike data katika sifa yetu. Hii inaweza kufanyika, kwa mfano, katika mjenzi wa darasa:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
}
?>
Sasa tufanye njia ambayo ita rudisha thamani ya sifa yetu:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
public function show() {
return $this->name;
}
}
?>
Tuunde kitu cha darasa, tukipitisha kigezo jina la mtumiaji:
<?php
$user = new User('john');
?>
Jaribio la kurejelea moja kwa moja kwa sifa yetu nje ya darasa litasababisha hitilafu:
<?php
echo $user->name; // hitilafu
?>
Lakini utumiaji wa njia yetu utaruhusu kusoma sifa hii:
<?php
echo $user->show(); // itatoa 'john'
?>
Katika darasa Employee fanya
sifa tatu za kifedha: jina, mshahara
na umri.
Pitisha kwa mjenzi thamani za sifa hizi.
Fanya njia ambayo itatoa data ya mfanyakazi.