Mantendo o hábito de publicar uma nova versão no final do ano (final de novembro - início de dezembro), a equipe de desenvolvimento do PHP acaba de anunciar o lançamento da terceira atualização do PHP 7, chamada PHP. 7.3.
Antes de prosseguir, lembre-se que o fim da vida útil do PHP 5.x, a última ramificação antes do PHP 7.x, está programado para 31 de dezembro de 2018, portanto, em cerca de vinte dias. Após essa data, nenhuma versão do PHP 5.x ainda se beneficiará da atualização de segurança, uma vez que o PHP 5.6, a versão mais recente da ramificação, também será cortado dessas atualizações. A comunidade PHP sabe disso há algum tempo, mas parece que não foi alertada.
De acordo com o W3Tech, a versão 5.x do PHP é atualmente (6 de dezembro) usada por 75,6% dos sites usando PHP. O PHP também é usado por 78,9% de todos os sites da Web como linguagem do lado do servidor. O que significa que cerca de 60% de todos os sites usam PHP 5.xe podem ser expostos após 31 de dezembro de 2018. É recomendado migrar para o PHP 7.1+ (o PHP 7.0 não possui mais uma atualização de segurança) desde 3 de dezembro).
PHP 7.0 to PHP 7.2
Desde o PHP 7.0 , tem sido uma boa quantidade de recursos que foram adicionados; recursos que podem ser importantes para lembrar para aqueles que ainda estão no PHP 5.x.
O PHP 7.0 trouxe ganhos de desempenho com um mecanismo Zend Engine até duas vezes mais rápido que na versão 5.6, mas também muitas melhorias e novos recursos. Isso incluiu um uso de memória bastante reduzido, o AST (Abstract Syntax Tree), suporte compatível de 64 bits, um aprimoramento da hierarquia Exception, muitos erros "fatais" convertidos para " Exceções ", um gerador de número aleatório seguro (RNG), a exclusão de interfaces de programação de aplicativos de servidor (SAPI) antigas e extensões, bem como aquelas que não são suportadas, o operador de coalescência nulo (??), Declarações de retorno e escalares , classes anônimas, declarações de custo zero,
A versão 7.1.0 da linguagem de desenvolvimento da Web no lado do servidor também seguiu com novos recursos e até ganhos de desempenho: até 35% mais rápido para cargas de trabalho com uso intensivo de CPU. Em relação aos novos recursos do PHP 7.1.0, isso incluiu o suporte de tipos anuláveis , a introdução de um tipo de retorno void que indica que uma função não retorna nada, um novo pseudo-type similar a callable chamado Iterable , adicionando suporte para especificar visibilidade de constantes (pública, protegida e privada), manipulação de exceção de multi-captura, e assim por diante.
PHP 7.2.0introduzida como principal novidade Biblioteca criptográfica de sódio que foi integrada no núcleo da linguagem. Esta biblioteca de software permite criptografia, descriptografia, assinaturas, hashing de senhas e muito mais. Além do sódio, o PHP 7.2 veio com melhorias e novos recursos, como a capacidade de converter chaves numéricas em objetos e tabelas ao lançar, contando objetos incontáveis, HashContext como um objeto, o Algoritmo Argon2 para hashing de senha, aprimoramento de constantes TLS, etc.

O que há de novo no PHP 7.3
Como nas atualizações anteriores, o PHP 7.3.0 vem com muitos novos recursos e melhorias. Entre os mais importantes, pode-se notar que o PHP 7.3 torna mais flexível sintaxe Heredoc e nowdoc . A sintaxe Heredoc e Nowdoc estão entre as quatro maneiras de declarar strings no PHP. Para a sintaxe Heredoc, por exemplo, após o operador<<<, um identificador é fornecido, seguido por uma nova linha. A string em si vem em seguida, seguida pelo mesmo identificador para fechar a notação. O identificador final deve começar na primeira coluna da linha. Além disso, o identificador deve seguir as mesmas regras de qualquer outro rótulo do PHP: ele deve conter apenas caracteres alfanuméricos e sublinhados, e deve começar com um caractere não numérico ou um sublinhado. Abaixo está um exemplo de uso do Heredoc .
| Código PHP: | Selecione tudo |
1
2
3
4
5
6
7
| <? Php class foo { pública $ bar = <<< EOT bar EOT ; } ?> |
O Nowdoc é identificado com a mesma sequência <<< usada pelo Heredoc , mas o seguinte identificador é colocado entre aspas simples. Abaixo está um exemplo de uso do Nowdoc .
| Código PHP: | Selecione tudo |
1
2
3
4
5
6
7
| <? Php class foo { pública $ bar = <<< EOT ' bar EOT ; } ?> |
Para fechar a cadeia, até o PHP 7.2, você tinha que escrever o identificador para a linha (colada à esquerda, sem recuo). Felizmente, essa sintaxe ( Heredoc e Nowdoc ) é mais flexível com o PHP 7.3 e permite recuar o identificador final.
| Código PHP: | Selecione tudo |
1
2
3
4
5
6
7
8
| <? Php class foo { pública $ bar = <<< EOT bar EOT ; } // O identificador pode ser indentado ?> |
Também deve ser notado que, atualmente, uma nova linha deve seguir o marcador para concluir o Heredoc / Nowdoc . Mas o PHP 7.3 vai mudar isso e permitir que você termine o Heredoc / Nowdoc na mesma linha.
O PHP 7.3 também permite finalizar vírgulas na chamada de função. No PHP, é possível deixar uma vírgula no final da lista de elementos em uma tabela. O PHP 7.2 estendeu essa possibilidade para namespaces agrupados. No PHP 7.3, essas vírgulas serão permitidas nas declarações de função.
Novas funções também foram adicionadas no PHP 7.3. Este é o caso, por exemplo, da função is_countable () . Já existe uma função count ()que retorna um erro se o parâmetro passado para ele não é enumerável. No PHP 7.3, a função is_countable () é introduzida para verificar se o valor é enumerável antes de executar uma contagem. A nova versão do lado do servidor linguagem de programação web ainda introduziu duas novas funções array_key_first () e array_key_last () para obter a primeira ou a última chave para uma mesa.
Como outros novos recursos, observe também que a extensão PCRE foi atualizada para o PCRE2; a capacidade de configurar a extensão JSON para lançar uma exceção no erro; Melhoria do algoritmo de hashing Argon2 com a adição de uma nova variante recomendada chamada Argon2id.
Observe também a desaprovação e exclusão de constantes não diferenciadas de maiúsculas e minúsculas entre outros recursos reprovados no PHP 7.3. Você encontrará no site oficial do PHP a lista exaustiva de mudanças nesta versão.
Downloads do PHP 7.3




















