Posso usar o PHP 5.5?

18

Com o congelamento de recursos do PHP 5.5 há muito tempo, achei que era hora de publicar uma atualização para a popular pergunta do PHP 5.4 e Drupal 7 .

Então, o Drupal pode rodar no PHP 5.5?

Letharion
fonte

Respostas:

21

Em resumo, se o seu site for executado no PHP 5.3, ele também será executado no 5.5, faça o upgrade! (Seu ambiente de desenvolvimento, até que uma versão real seja lançada)

Com a resposta curta fora do caminho, aqui estão mais alguns detalhes.

Com relação a "O Drupal funciona com ele", muito pouco mudou do PHP 5.3 para 5.4 para 5.5. O único problema que apareceu no PHP 5.4 era realmente apenas o PHP sendo melhor em dizer aos desenvolvedores quando eles estavam fazendo algo errado, em vez de uma incompatibilidade introduzida pelo PHP. Os detalhes disso são bem abordados no PHP 5.4 e Drupal 7 .

Porém, nenhum aviso semelhante aparece no PHP 5.5 e, embora algumas coisas tenham mudado , é altamente improvável que elas tenham um impacto negativo no seu site Drupal.

Uma preocupação de desempenho que surgiu com a execução da versão 5.4 foi que a APC estava atrasada no suporte. Desta vez, não será um problema, pois o 5.5 agora inclui uma substituição do APC Optimizer +

Drupal 6: Até agora, a maioria das coisas funciona bem com o PHP 5.3, o que significa que ele também deve funcionar no 5.5. Eu ainda tenho que testar isso sozinho.

Drupal 7: Funciona sem problemas, nunca encontrei nenhum problema, principalmente porque o Drupal 7 foi desenvolvido mais com o PHP 5.3 em mente, e quaisquer problemas descobertos na 5.4 foram corrigidos há muito tempo.

Drupal 8: Requer 5.3 desde o início, portanto funcionará bem. Atualizarei a resposta quando eu a tiver testado.

Letharion
fonte
11
Meu site pessoal está em execução no PHP 5.5 há algum tempo sem problemas (apesar de concedido, é um site bastante simples). O problema mais notável relacionado ao núcleo de que estou ciente é que a instalação pode falhar se o OPcache (o cache de opcode interno à la APC) estiver ativado . Portanto, se você quiser usar o OPcache, talvez seja necessário desativá-lo durante a instalação , reative-o depois.
Garrett Albright
@GarrettAlbright Estou pesquisando a atualização do site D6 para o PHP 5.5. Atualmente, nenhum dos campos de data nos formulários de administração está mostrando os valores de data padrão. Você já viu algum desses problemas?
Patrick Patrick
Patrick, não posso ajudá-lo com nada sobre o Drupal 6, exceto para aconselhá-lo a atualizar, se possível. Essa base de código se torna cada vez mais antiga.
Garrett Albright
@ Letharion: Hora de atualizar a resposta após testar o D8 com o PHP5.5?
234 Hugo Hugo
11
@ Hugo Hmmm, definitivamente. Eu esqueci essa pergunta em particular e, embora eu tenha um site D8, não lembrei disso. Como uma observação rápida, tentei alguns betas na minha máquina com 5.5, e tudo funcionou bem. Obrigado pelo lembrete, porém, tentarei lembrá-lo da próxima vez que mexer com D8.
Letharion 11/03/2015
3

Atualizações para a resposta de letharion:

  • O Drupal 8 agora requer o PHP 5.4.2 (provavelmente ainda maior quando o lançamos) e o 5.5 é suportado, embora não seja necessário
  • O suporte do Drupal 6 para 5.3 já é bom, embora ainda existam problemas, tratados como bugs porque a migração do D8 para o D6 dependerá do PHP 5.3 suportado pelo D6.
FGM
fonte
1

Enquanto instalava uma versão nova do Drupal 7.26 em um ambiente PHP 5.5, eu recebia o carregamento da tela "Banco de dados de configuração" duas vezes. No segundo envio do formulário, eu receberia um WSOD . O carregamento do site a partir do caminho raiz deu um 404.

Encontrei este patch (comentário nº 45) que resolveu o problema para mim. Como você lerá lá, foi devido à maneira como o novo sistema de cache PHP funciona e ao cache do settings.php, que armazena as credenciais do banco de dados.

alexkb
fonte
1

Adicionar as seguintes linhas ao arquivo principal htaccess pode ajudar.

php_value date.timezone America/New_York
php_value error_reporting E_ALL
php_value display_errors 1
php_value display_startup_errors 1
php_value memory_limit 256M
ummdorian
fonte
Adicionando php_value error_reporting E_ALLme passou o WSOD, o resto apenas ajudou a depurar.
wolffer-east
0

Eu encontrei um problema ao instalar o Drupal 7.26 no Ubuntu 13.10 (php 5.5).

Fatal error: Call to undefined function field_attach_load() in /var/www/d7/includes/entity.inc on line 316

Eu tive que aplicar esse patch - https://drupal.org/comment/7721819#comment-7721819 .

Banco de dados existente excluído para esta instalação.

Recriou o banco de dados e depois executou install.php .

O problema para mim foi corrigido com esse patch.

dustinsilva
fonte
Eu não acho que isso esteja necessariamente relacionado à versão do PHP. field_attach_load()parece ser uma função Drupal e erros semelhantes foram publicados em 2009 , relacionados ao Drupal 7. #
MrWhite
0

Nova instalação de drupal-7.26

Ran PHP 5.5.9 -got error: "... entity.inc na linha 316"

No painel de controle do servidor, mudei minha pasta Drupal para usar "PHP 5.4.25". Em seguida, retorne ao navegador, digite novamente os dados de instalação e voila -> em funcionamento ...

Temas instalados, alguns módulos, páginas criadas; mudou de volta para PHP 5.5.9 -> ainda funcionando ...

user27735
fonte
0

Drupal 7: verifique todos os problemas com a tag php 5.4 ou php 5.5 para garantir que você não esteja usando nenhum dos módulos que ainda apresentam problemas com essas versões: https://drupal.org/project/issues/search?text=&projects= & atribuído = & enviado = & project_issue_followers = &&&& issue_tags_op =% 3D & issue_tags = PHP% 205,4% 2C% 20PHP% 205,5 .

Se o seu site tiver algum desses módulos instalados, acho melhor seguir o php 5.3 para o Drupal 7.

Drupal 6 Adicione a tag php 5.3 também, pois alguns módulos menos usados ​​ou mantidos ainda têm problemas com o php 5.3.

Hans Rossel
fonte