[spip-dev] Compatibilité PHP 5.4

Bonjour,

Je suis un nouvel inscrit sur cette liste de diffusion. Je travaille depuis un peu plus de 2 ans avec SPIP au ministère de l’agriculture.

J’aurai aimé savoir si les développements de SPIP pour une compatibilité avec PHP 5.4 était en cours ?

J’ai contacté une personne au ministère de l’écologie (qui connait bien mieux SPIP que moi) qui m’a communiqué une liste non exhaustive des points qu’il faudrait corriger :

1. Only variables should be passed by reference

Fichier incriminé : ecrire/inc/utils.php
Solution : A la ligne 1060, il convient de remplacer :
$script1 = array_shift(explode(’&’, $script));
par :
$split = explode(’&’, $script);
$script1 = array_shift($split);

2. Illegal string offset

Fichier incriminé : prive\formulaires\login.php
Solution : A la ligne 59, il convient de remplacer :
if ($erreur OR !$GLOBALS[‘visiteur_session’][‘id_auteur’])
par :
if ($erreur OR !isset($GLOBALS[‘visiteur_session’][‘id_auteur’]) OR
!$GLOBALS[‘visiteur_session’][‘id_auteur’])

3. Fonctions obsolètes en PHP 5.4

SPIP 2.1.12 utilise la fonction mysql_list_dbs lors de l’installation de SPIP, dans la page qui présente les bases existantes.

Pour le point 1, il me semble que le ticket http://core.spip.org/issues/2615 traite le problème.

Pour les autres points, y-a-t-il un développement en cours ? Sinon je peux regarder.

Merci

Guillaume Le Bozec

PHP 5.4 combine désormais les rapports d'erreurs E_ALL et E_STRICT.
Ces erreurs étaient déjà présentes sur PHP<5.4 mais non répercutées sur les pages.
Le problème que j'ai remonté dans le ticket 2615 affecte le core mais également quelques plugins.
Le point 1 est apparu depuis PHP >5.1, désormais il est impératif d'être vigilant sur les références passées
(un peu la sauce C++ sur la différence entre pointeurs et références :) Le 04/04/2012 14:19, Guillaume Le Bozec a écrit :

Tous les commits correctifs sont référencés dans le ticket
http://core.spip.org/issues/2615

Si d’autres cas sont repérés le mieux est de les ajouter dans le ticket que je laisse ouvert

Cédric

Le 4 avr. 2012 à 14:19, Guillaume Le Bozec a écrit :