Các đối tượng bên trong các lớp trong OOP trong PHP

Trong các lớp, bạn có thể sử dụng các đối tượng của các lớp khác. Hãy xem xét một ví dụ. Giả sử chúng ta muốn tạo một người dùng có tên và họ, cùng với thành phố nơi họ sống. Giả sử chúng ta có lớp sau dành cho thành phố:

php<?php
  class City {
    public $name;
    
    public function __construct($name) {
      $this->name = $name;
    }
  }
?>

Chúng ta sẽ truyền tên, họ và thành phố dưới dạng các tham số của hàm tạo:

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

Trong đó, tên và họ sẽ là các chuỗi, còn thành phố - là một đối tượng của lớp riêng biệt của nó:

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

Hãy xuất tên người dùng của chúng ta:

php<?php
  echo $user->name;
?>

Bây giờ hãy xuất tên thành phố của người dùng của chúng ta:

php<?php
  echo $user->city->name;
?>
Задание 1

Cho lớp sau:

php<?php
  class Employee {
    public $name;
    public $position;
    public $department;
  
    public function __construct($name, $position, $department) {
      $this->name = $name;
      $this->position = $position;
      $this->department = $department;
    }
  }
?>

Hãy làm sao cho tham số thứ hai và thứ ba được truyền vào là các đối tượng của các lớp riêng biệt.

Задание 2

Tạo một đối tượng nhân viên bằng cách sử dụng lớp từ bài tập trước.

Задание 3

Xuất ra console tên, chức vụ và bộ phận cho nhân viên đã tạo.