Global reservierte Wörter sind nun innerhalb von Klassen, Schnittstellen und Traits als Namen für Eigenschaften, Konstanten und Methoden erlaubt. Dadurch werden Probleme mit der Abwärtskompatibilität verringert, wenn neue Schlüsselwörter eingeführt werden, und Einschränkungen bei der Namensgebung für APIs vermieden.
Dies ist besonders nützlich, um interne DSLs mit "sprechenden" Schnittstellen (Fluent Interfaces) zu erstellen:
<?php
// 'new', 'private' und 'for' waren bisher nicht nutzbar.
Project::new('Project Name')->private()->for('purpose here')->with('username here');
?>
   Die einzige Einschränkung dabei ist, dass das Schlüsselwort
   class immer noch nicht als Name für eine Konstante
   verwendet werden kann, da es sonst zu einem Konflikt mit der Syntax zur
   Auflösung von Klassennamen (ClassName::class) kommen
   würde.
  
   Bisher wurde eine Warnung ausgegeben, wenn die INI-Einstellung
   date.timezone nicht vor der
   Verwendung von datums- oder zeitbasierten Funktionen gesetzt wurde. Nun
   wurde diese Warnung entfernt (wobei die Standardeinstellung für
   date.timezone immer noch UTC ist).
  
