[intégrée] Prop0005 - Compatibilité PHP 7

Statut

Évolution intégrée à la v4.6 :
https://adullact.net/scm/viewvc.php/openmairie?view=revision&revision=3745

Porteur principal : Nicolas Meucci

Porteur secondaire : Nicolas Haye

Résumé

Rendre le framework openMairie compatible avec PHP 7.

Motivation

  • il n’y a plus de support actif de PHP 5.6
  • le log d’Apache est pollué par les Notice PHP 7

Pré-requis

Aucun

Proposition et implémentation

Branche de développement core :
http://adullact.net/scm/viewvc.php/openmairie/openmairie_exemple/branches/prop0005-compatibilite-php7
Branche de développement applicatif (openADS) :
http://adullact.net/scm/viewvc.php/openfoncier/branches/prop0005-compatibilite-php7/
Branche de documentation :

Incompatibilités / actions à conduire :

  • La librairie DB de Pear v1.7.14 est incompatible PHP 7
    → mettre à jour vers la v1.9.2
  • La méthode database::isError() doit être statique
    → corriger sa déclaration et remplacer $this par ’Self'
  • Les prototypes des méthodes doivent être identiques
    → corriger le générateur
    → corriger la classe dbForm
    → corriger les classes filles (concerne également les applications en sus du framework)

Risques

Aucun :

  • la correction du framework est rétrocompatible avec PHP 5
  • le core en PHP 7 peut cohabiter avec l’applicatif en PHP 5
2 « J'aime »