Nullsafe-Operator in OOP in PHP

Der Nullsafe-Operator ?-> ermöglicht den sicheren Zugriff auf Methoden und Eigenschaften von Objekten, die null sein können.

Schauen wir uns ein Beispiel an. Nehmen wir an, wir haben die folgende Klasse:

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

Erstellen wir ein Objekt dieser Klasse:

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

Geben wir den Wert seiner Eigenschaft aus:

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

Nehmen wir nun an, dass wir statt einem Objekt null haben. In diesem Fall würde der Versuch, auf den Benutzernamen zuzugreifen, zu einem Fehler führen:

php<?php
  $user = null;
  echo $user->name; // Fehler
?>

Um den Fehler zu unterdrücken, können wir den Nullsafe-Operator verwenden:

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

Verbessern Sie den folgenden Code mit dem Nullsafe-Operator:

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;
?>