Lançamento do PHP 7:principais recursos e o que você precisa saber
Se você é um desenvolvedor, provavelmente sabe que a versão beta completa do novo PHP 7 foi lançada. A versão 7.0.0 contém muitos recursos e funcionalidades interessantes. No entanto, recomendamos não usá-lo em ambiente de produção , até obter a versão estável, prevista para novembro de 15.
Você pode testar e brincar com a versão beta mais recente e reportar bugs se descobrir durante o teste. Estamos listando todas as alterações/atualizações que você verá no PHP 7.0.0.
16. Este é PHP 7 (não 6)
A versão estável atual é PHP 5.6. Portanto, muitos desenvolvedores estão esperando a versão 6.0. O que eles não sabem é que o PHP 6 já existiu no passado como um processo experimental, mas nunca chegou à fase de produção. A equipe principal de desenvolvimento decidiu que passaria o nome PHP 6 para o próximo lançamento principal.
15. Suporte para Windows de 64 bits
A versão atual do PHP não oferece suporte a números inteiros de 64 bits ou arquivos grandes. As coisas vão mudar no futuro, à medida que o PHP 7 introduz suporte consistente de 64 bits, o que significa que serão suportados números inteiros nativos de 64 bits e arquivos grandes.
14. Remoção de funções e extensões obsoletas
Um dos principais objetivos do PHP 7 era liberar memória para permitir melhorias, por isso foi necessário eliminar APIs, extensões e funcionalidades obsoletas de servidores antigos e sem suporte.
Todos os itens removidos não são usados há muito tempo. No entanto, se você tiver um aplicativo legado rodando em versões mais antigas, atualizar para o PHP 7 pode potencialmente quebrar o código.
Leia:30 ferramentas de rastreamento de bugs para desenvolvedores
13. Declarações de uso de grupo
Este RFC foi criado para melhorar a implementação atual do namespace PHP, introduzindo o conceito de grupo de declaração. Este recurso é útil para codificadores que normalmente importam muitas classes do mesmo namespace. A nova sintaxe elimina verbosidade, deixa seu código mais organizado e economiza muito tempo de digitação.
12. Aulas anônimas
O conceito de classes anônimas já está sendo usado em outras linguagens de programação orientadas a objetos, como Java e C#. Eles nada mais são do que uma classe sem nome que pode acelerar a codificação e também o tempo de execução. Você deve usá-los quando uma classe for usada apenas uma vez durante a execução e quando uma classe não precisar ser documentada.
11. Sintaxe de Variável Uniforme
A sintaxe uniforme de variáveis resolve muitas inconsistências na forma como as expressões são avaliadas. Por exemplo, a capacidade de chamar encerramento atribuído a propriedades usando ($object->closureProperties)() , além de poder encadear chamadas estáticas.
Na versão mais antiga do PHP, $obj->$properties[‘name’] acessaria a propriedade cujo nome está na chave de nome do array de propriedades. Agora, acessaria a chave do nome da propriedade cujo nome reside em $properties.
10. Sintaxe de escape de ponto de código Unicode
O novo caractere de escape (\u) nos permite especificar pontos de código de caracteres Unicode (em hexadecimal) de forma inequívoca dentro de strings. Por exemplo, se você não conseguir digitar nenhum emoji, poderá usar sua sequência de escape.
9. Classe pai compartilhada no tratamento de exceções
Para codificadores PHP, lidar com erros fatais e capturáveis nunca foi uma tarefa fácil. Com as novas exceções de mecanismo, você pode substituir esses tipos de erros por exceções.
Para permitir que os programadores capturem exceções tradicionais e exceções de mecanismo, o PHP 7 introduz uma nova classe pai compartilhada sob o nome de \BaseException .
8. Fechamento de vínculo na chamada
Encerramento::bind() e Closure->bindTo() permite que você altere a vinculação de $this e o escopo de chamada, separadamente ou em conjunto, criando um fechamento duplicado. No PHP 7, existe uma maneira fácil de fazer isso no momento da chamada, vinculando ambos $this e chamar o escopo para o mesmo objeto com a adição de Encerramento->chamar(). O método toma o objeto como primeiro argumento, seguido por qualquer argumento para passar para o encerramento.
7. Operador de coalescência nulo
O operador coalescer é indicado por “??”. Retorna o resultado do seu primeiro operando se existir e não for NULL, caso contrário retornará o segundo operando. Isso significa que é completamente seguro usar coalesce, pois não gerará um E_NOTICE mesmo que o valor não exista.
6. Operador de comparação combinado
O operador de comparação combinado (também conhecido como operador de nave espacial) é semelhante a version_compare() ou strcmp() no comportamento, mas pode ser usado em todos os valores PHP genéricos. Já existe na linguagem de programação Ruby e Perl.
O operador retorna -1 se o operando esquerdo for maior, 0 se ambos forem iguais e 1 se o operando esquerdo for maior.
5. Expressão de retorno do gerador e delegação do gerador
A expressão de retorno do gerador permite retornar um valor após a conclusão bem-sucedida de um gerador. No PHP 7, você pode chamar $generator->getReturn() para recuperar o valor de retorno. Se o gerador ainda não tiver retornado ou lançado uma exceção não detectada, $generator->getReturn() lançará uma exceção. Caso o gerador tenha sido concluído, mas não houve retorno, NULL é retornado.
O recurso de delegação de gerador permite retornar outra estrutura iterável que pode ser percorrida, seja um iterador, array ou outro gerador. A iteração da subestrutura é feita pelo loop original mais externo, em vez de um loop recursivo.
4. Declarações de tipo de retorno
Muitos programadores gostariam de declarar o tipo de retorno de uma função. Ajuda a evitar que valores de retorno e subtipos não intencionais quebrem o tipo de retorno esperado do supertipo, especialmente em interfaces. Além disso, o PHP 7 vem com 4 novos tipos de desacelerações para o tipo escalar – string, int, float e bool. Esses novos tipos permitem que os codificadores especifiquem que esperam que números inteiros, flutuantes, strings e booleanos sejam retornados.
Na imagem acima, a função foo deve retornar em array. Confira alguns exemplos complexos.
3. Árvore de sintaxe abstrata
A maior e mais invisível mudança é a adição de uma árvore de sintaxe abstrata – uma representação intermediária do código durante a compilação. Ele substitui a prática existente de emitir opcodes diretamente do analisador. Isso nos permite remover vários hacks e torna a implementação mais compreensível e fácil de manter. Além disso, você pode implementar uma sintaxe que não era viável com o processo de compilação de passagem única.
2. O novo mecanismo Zend
O primeiro Zend Engine introduzido em 1999 no PHP 4. É um mecanismo de script de código aberto (escrito em C) que interpreta PHP. A versão atual do PHP usa Zend Engine II, que fornece gerenciamento de memória e recursos e adiciona um modelo de objeto extensível e melhoria significativa de desempenho à linguagem.
O novo Zend Engine III, originalmente codinome phpng, está em desenvolvimento para PHP 7.
1. Desempenho + economia de memória
O maior motivo para atualizar para o PHP 7 é o seu desempenho. Esta é uma boa notícia, especialmente para hosts menores, pois poderão hospedar mais clientes no mesmo hardware. O desempenho da 7ª versão está no mesmo nível do Facebook HHVM, que possui compilador JIT (just-in-time) que permite a compilação em tempo de execução e não antes da execução. Há também uma economia substancial de memória, como otimização de estruturas de dados internas.
Recomendado:30 bibliotecas PHP incríveis para programadores e desenvolvedores
Como você pode ver no gráfico divulgado pela Zend, a solicitação do WordPress no PHP 5.6 é executada sob 100 milhões de instruções de CPU, enquanto o PHP 7 executa apenas 25 milhões para fazer o mesmo trabalho. Além disso, os testes mostram que você pode executar 3x transações Magento no mesmo hardware, e o Drupal 8 roda 72% mais rápido com PHP 7.
Tecnologia industrial
- Pinagem de GPIO de framboesa- Funções dos vários pinos de Raspberry Pi
- Introdução ao G-Code e M-Code na programação CNC | Códigos G e Códigos M para Torneamento e Fresamento CNC | CNCLATHING
- As perguntas técnicas mais engraçadas e os trolls da Internet que você deve ver
- Projeto do Advento:Como o planejamento estratégico levou ao aumento de vendas, empregos e economia
- Quatro abordagens para a fabricação estimuladas por COVID-19
- Quais são os níveis de manutenção industrial?
- Multas da OSHA impulsionam a conformidade de segurança na fabricação e manutenção industrial
- Como você pode resolver os caros problemas de controle de cavacos do alumínio
- Desafios e oportunidades na fabricação de dispositivos médicos
- Tensão de ruptura do isolador