Typed properties
Властивості класу отримали типи, як уже мали параметри й результати функцій. PHP перевіряє значення при кожному присвоєнні, а не лише в сетері, і не дає прочитати властивість до ініціалізації. Анотація @var для цього більше не потрібна.
public int $salary;
/** @var int */
private $salary;
public function setSalary($salary)
{
$this->salary = (int) $salary;
}