Приватни методи во ООП во 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 . '
;
}
}
?>