PHP-də OOP-də Təhlükəsiz Çıxarış Operatoru

Təhlükəsiz çıxarış operatoru ?-> null ola bilən obyektlərin metodlarına və xassələrinə təhlükəsiz müraciət etməyə imkan verir.

Gəlin nümunə ilə baxaq. Tutaq ki, bizim aşağıdakı sinifimiz var:

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

Bu sinifin obyektini yaradaq:

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

Onun xassəsinin qiymətini çap edək:

php<?php
  $user = new User('john');
  echo $user->name;
?>

Tutaq ki, indi elə oldu ki, obyekt yerinə bizdə null var. Bu halda istifadəçi adına müraciət etməyə cəhd xətaya səbəb olacaq:

php<?php
  $user = null;
  echo $user->name; // xəta
?>

Xətanı aradan qaldırmaq üçün biz təhlükəsiz çıxarış operatorundan istifadə edə bilərik:

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

Aşağıdakı kodu təhlükəsiz çıxarış operatoru vasitəsilə yaxşılaşdırın:

php<?php
  class Employee {
    public $name;
    public $salary;
    
    public function __construct($name, $salary)
    {
      $this->name = $name;
      $this->salary = $salary;
    }
  }
  
  $employee = new Employee('john', 1000);
  
  echo $employee->name;
  echo $employee->salary;
?>