Outras mudanças

Abertura nas restrições de palavras reservadas

Palavras reservadas globalmente agora são permitidas como nomes de propriedades, constante e métodos dentro de classes, interfaces e traits. Isso reduz o aspecto de quebras no BC quando novas palavras-chave são introduzidas e evita restrições de nomes em APIS.

Isso é particularmente útil quando estiver criando DSLs com interfaces fluentes:

<?php
// 'new', 'private', e 'for' eram proibidas
Project::new('Project Name')->private()->for('purpose here')->with('username here');
?>

A única limitação é que a palavra-chave class continua não podendo ser utilizada como nome de constante, caso contrário conflitará com a sintaxe de resolução de nomes de classe (ClassName::class).

Remoção do aviso do date.timezone

Anteriormente, um aviso era emitido se a configuração INI date.timezone não havia sido definida antes de utilizar qualquer função de data ou tempo. Agora, este aviso foi removido (com a diretiva date.timezone padronizada para UTC).

add a note add a note

User Contributed Notes 1 note

up
0
Nicole Ama
8 years ago
Using "continue" outside of a loop or switch context throws a fatal error. Use "return" instead, if it makes sense to. Probably should have used return to begin with, but it never threw an error as of PHP 5.2. Not sure about later php 5.x versions.
To Top