PHPдеги ООПдо жеке ыкмалар
Жеке болушу мүмкүн гана касиеттер эмес, бирок ыкмалар да. Адатта жеке кылат жардамчы ыкмаларды, ошондуктан алар сырттан классын ичинен үчүн чакырылбашы мүмкүн эмес.
Келгиле, мисал менен карап көрөлү. Бизде төмөнкүдөй класс бар болсун:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
public function show() {
return $this->name;
}
}
?>
Бул класста жеке ыкма жасайлы, ал параметр катары кабыл алат сапты жана анын биринчи белгисин баш тамга кылат:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
public function show() {
return $this->name;
}
private function cape($str) {
return mb_strtoupper(mb_substr($str, 0, 1)) . mb_substr($str, 1);
}
}
?>
Келгиле, биздин жардамчы ыкмабызды башка ыкманын ичинде колдонолу:
<?php
class User {
private $name;
public function __construct($name) {
$this->name = $name;
}
public function show() {
return $this->cape($this->name);
}
private function cape($str) {
return mb_strtoupper(mb_substr($str, 0, 1)) . mb_substr($str, 1);
}
}
?>
Келгиле, текшерип көрөлү. Жараталы биздин класстын объектисин:
<?php
$user = new User('john');
?>
Жардамчыны колдонгон коомдук ыкманы чакыралы:
<?php
echo $user->show();
?>
Төмөнкү коддо жардамчы ыкманы жеке кылыңыз:
<?php
class Employee {
public function __construct($name, $salary) {
$this->name = $name;
$this->salary = $salary;
}
public function getSalary() {
return $this->addSign($this->salary);
}
public function addSign($num) {
return $num . '₽';
}
}
?>