Diferenças entre o PHP 5.5 e o PHP 7/8

Nesta página, explicamos como migrar seu aplicativo PHP 5.5 para o ambiente de execução do PHP 7/8 no ambiente padrão do App Engine.

Problemas de compatibilidade entre o PHP 5.5 e o PHP 7/8

A documentação oficial do PHP contém informações sobre a migração de diferentes versões do PHP:

Como migrar seu arquivo app.yaml

Coloque um controlador frontal para processar todo o roteamento em seu aplicativo. Para mais informações, consulte Inicialização do aplicativo.

Os ambientes de execução do PHP 7/8 não permitem que o elemento do gerenciador script seja personalizado. O único valor válido é auto, porque todo o tráfego é exibido pelo comando entrypoint. Todos os gerenciadores de URL não estáticos precisam incluir script: auto para serem implantados.

O comportamento de alguns elementos no arquivo de configuração app.yaml foi modificado:

ElementoTipo de alteraçãoDescrição
entrypointIncluídoOpcionalmente, use esse campo para especificar o comando que será executado quando o aplicativo for iniciado.
threadsafeObsoletoTodos os aplicativos são presumidos como thread-safe, o que significa que uma instância pode manipular várias solicitações ao mesmo tempo.
api_versionSuspensoNão mais necessário no ambiente de execução do PHP 7/8.
application_readableSuspenso
builtinsObsoleto
librariesObsoletoDependências arbitrárias de terceiros podem ser instaladas usando um arquivo de metadados composer.json.
handlersModificado

Se você usar qualquer um dos campos obsoletos, haverá um erro na implantação do aplicativo.

Para mais informações, consulte a referência app.yaml.

Restrições de ambiente de execução reduzidas

Os ambientes de execução do PHP 7/8 têm menos restrições em comparação com o ambiente de execução do PHP 5.5.

Para mais informações, consulte a documentação do ambiente de execução do PHP 7/8.

Como migrar do SDK PHP do App Engine

Para reduzir o esforço e a complexidade da migração do ambiente de execução, o ambiente padrão do App Engine permite acessar muitos serviços incluídos legados e APIs no ambiente de execução do PHP 7/8 , como o Memcache. Seu aplicativo PHP 7/8 pode chamar as APIs de serviços incluídos no SDK do App Engine para PHP 7/8 e acessar a maioria das mesmas funcionalidades que o ambiente de execução do PHP 5. Nem todos os serviços incluídos legados disponíveis para PHP 5 têm um serviço correspondente no PHP 7/8. Para ver a lista completa das APIs dos serviços incluídos legados disponíveis para PHP 7/8, consulte a documentação de referência da API de serviços incluídos legados.

Você também tem a opção de usar produtos do Google Cloud que oferecem funcionalidades semelhantes aos serviços incluídos legados. Esses produtos do Google Cloud fornecem a biblioteca de cliente CLI do Google Cloud. Para os serviços incluídos no pacote que não estão disponíveis como produtos separados no Google Cloud, como pesquisa, é possível usar provedores de terceiros ou outras soluções alternativas. Para saber mais sobre como migrar para serviços desagrupados, consulte Como migrar de serviços incluídos.

Executar o aplicativo localmente

Para testar o aplicativo e executá-lo localmente:

  1. Instale localmente uma versão do PHP que corresponda a um dos ambientes de execução do PHP 7/8 disponíveis no ambiente padrão do App Engine.
  2. Instale um servidor da Web e use-o para disponibilizar seu app localmente.

Por exemplo, inicie o servidor HTTP executando o seguinte comando:

php -S localhost:8080

Em seguida, visualize o aplicativo no navegador da Web em http://localhost:8080.