Другие изменения
Ослабление ограничений на использование зарезервированных слов
Глобально зарезервированные слова теперь разрешено использовать для свойств, констант и методов в классах, интерфейсах и трейтах. Это уменьшает масштабы проблем обратной совместимости при вводе новых ключевых слов и позволяет избежать ограничений для API.
Это особенно полезно при создании внутренних DSL с текучими интерфейсами:
<?php
// Ранее 'new', 'private' и 'for' использовать было нельзя.
Project::new('Project Name')->private()->for('purpose here')->with('username here');
?>
Единственное ограничение, что слово class
все еще нельзя
использовать как имя константы, так как оно будет пересекаться с синтаксисом
разрешения имени класса (ClassName::class
).
Удаление предупреждения date.timezone
Ранее вызывалось предупреждение, если INI-настройка
date.timezone
не была задана раньше
использования каких-либо функций работы с датой или временем. Теперь это
предупреждение удалено (но
date.timezone
по умолчанию все еще UTC).