01 nov 2017

Melhorias no PHP 7

Melhorias no PHP 7

Não é uma novidade, mas vale ressaltar as melhorias e novidades que o PHP 7 nos trouxeram. Irei deixar neste post alguns detalhes sobre algumas das novidades que esta incrível linguagem de programação implementou.

Desempenho:

Testes e benchmarks realizados mostram que o PHP 7 pode ser até duas vezes mais rápido que os releases da versão 5.x, ficando páreo com o projeto HHVM, do Facebook, um compliador JIT para código PHP. Alguns reviews mostram que o PHP 7 pode chegar a ser até mesmo nove vezes mais rápido que a 5.6.

Alguns dos testes executados por desenvolvedores mostram o grande ganho do desempenho da linguagem, como ilustra a imagem abaixo:

 

 

 

 

 

 

 

 

 

 

 

 

A Zend, empresa por trás de certificações PHP, também responsável por um dos melhores frameworks PHP o ZendFramework, disponibilizou algumas das melhorias de desempenho ganhas em empresas reconhecidas no ramo da tecnologia. Confira as imagens logo abaixo:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Não só o desempenho foi melhorado no PHP 7, também há alguns recursos novos como:

– MySql removido.

Desde o PHP 5.5, as funções mysql_* eram consideradas obsoletas. Ou seja, tudo indicava que elas seriam removidas em um futuro bem próximo.

No PHP 7, as funções mysql_* (como mysql_connect(), mysql_query() e outras) deixaram de existir. Agora é preciso utilizar MySQLi ou PDO.

Recomendo utilizar PDO, por ser mais robusta e ser independente de SGBD.

– Erros Fatais e Exceções.

 No PHP 7, erros fatais passaram a ser Exceções. Isso quer dizer que eles podem ser tratados em bloco try/catch, sem interromper a execução do script.

Exemplificando:

 

     

 

 

A execução do código acima terá a seguinte saída:

 

 

Construtores do PHP 4 obsoletos.

Antes do PHP 5, os construtores recebiam o mesmo nome da classe. Por exemplo:

 

 

 

 

 

Isso continuou funcionando no PHP 5, mas era recomendado usar o método __construct, ficando desta forma:

 

 

 

 

O PHP 7 recomenda que seja usado método __construct em vez do método com o mesmo nome da classe. Ou seja, o uso de construtores no padrão do PHP 4 continuará sendo possível, mas é um recurso obsoleto (Deprecated).

– Instrução de Tipos: Scalar Types

 PHP é uma linguagem NÃO tipada.

Aos poucos ela vem ganhando alguns recursos que a torna fracamente tipada.

Isso significa que podemos criar códigos mais consistentes e menos suscetíveis a erros e problemas.

O PHP 5 já possui o recurso de Indução de Tipos.

É possível definir alguns tipos para parâmetros de métodos e funções. Mas só é possível definir dois tipos: arrays (o tipo “array”) e objetos (com o nome da classe).

A partir do PHP 7, poderemos usar outros tipos também: int, float, string e bool.

Esses tipos podem ser definidos nos parâmetros de funções e métodos, como já era feito no PHP 5. Mas agora há uma novidade: também poderemos definir o tipo do retorno.

 

 

 

 

– Novo operador Spaceship (<=>)

Esse operador recebe o nome de “Spaceship” em algumas outras linguagens, e é usado para comparação numérica.

Se você já usou a função strcmp(), com certeza vai entender esse operador sem dificuldades.

Mesmo se não usou, é simples de entender.

 

 

 

– Null Coalesce Operator (??)

O nome parece complicado, mas ele faz algo bem simples.

Ele é útil para verificar a existência de variáveis, como fazemos com valores de $_GET ou $_POST, usando isset.

Ele faz com que esta linha:

 

 

Seja transformada nesta:

 

 

Conclusão

O PHP 7 traz diversas novidades. E, se você seguia as Boas Práticas e padrões que o PHP recomendava, a partir da versão 5.5, provavelmente terá pouquíssimos problemas (ou nenhum) para migrar para o PHP 7. Fique à vontade e desfrute dessas diversas novidades.

Share

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *