Pencapai Sifat dalam OOP dalam PHP

Katakan kita ada kelas berikut dengan sifat persendirian:

php<?php
  class User {
    private $name;
    private $surn;
    
    public function __construct($name, $surn) {
      $this->name = $name;
      $this->surn = $surn;
    }
  }
?>

Seperti yang anda lihat, sifat ini ditetapkan sekali semasa penciptaan objek. Walau bagaimanapun sekarang, sifat ini mustahil untuk dibaca, kerana ia adalah persendirian dan tiada kaedah yang sepadan untuk ini.

Mari kita buat untuk sifat kita kaedah khas yang membolehkan membaca sifat ini. Kaedah sedemikian (dipanggil pencapai) biasanya bermula dengan perkataan get, dan kemudian diikuti dengan nama sifat yang dibaca.

Mari buat pencapai untuk sifat kita:

php<?php
  class User {
    private $name;
    private $surn;
    
    public function __construct($name, $surn) {
      $this->name = $name;
      $this->surn = $surn;
    }
    
    public function getName() {
      return $this->name;
    }
    
    public function getSurn() {
      return $this->surn;
    }
  }
?>

Mari kita uji kerja mereka. Cipta objek, dengan menghantar data pengguna sebagai parameter:

php<?php
  $user = new User('john', 'smit');
?>

Mari baca data ini, dengan menggunakan pencapai:

php<?php
  var_dump($user->getName());
  var_dump($user->getSurn());
?>
Задание 1

Dalam kelas Employee buat tiga sifat persendirian: nama, gaji dan umur.

Задание 2

Hantar nilai sifat ini sebagai parameter kepada pembina.

Задание 3

Buat pencapai, yang memaparkan nilai setiap sifat kita.