PHP 7.0.9

Bonsoir,

suite à une mise à jour de PHP vers la version '7.0.9-1~dotdeb+8.1',
l'espace public d'un site spip (3.1.1) n'est plus accessible, d'après
les log, le problème provient de la fonction "f_queue()".

Parameter 1 to f_queue() expected to be a reference, value given

En remplaçant le passage par référence par un passage par valeur dans le
fichier /ecrire/inc/pipelines.php, tout fonctionne de nouveau.

function f_queue(&$texte) {

devenant

function f_queue($texte) {

Quelles conséquence peut avoir ce changement, il y a sûrement une
méthode plus propre pour résoudre ce bug. Est-ce que le passage par
référence est utile ici ?

Bonne soirée.

Pierre André a écrit le 25/07/2016 à 22:26 :

Bonsoir,

suite à une mise à jour de PHP vers la version '7.0.9-1~dotdeb+8.1',
l'espace public d'un site spip (3.1.1) n'est plus accessible, d'après
les log, le problème provient de la fonction "f_queue()".

Parameter 1 to f_queue() expected to be a reference, value given

En remplaçant le passage par référence par un passage par valeur dans le
fichier /ecrire/inc/pipelines.php, tout fonctionne de nouveau.

function f_queue(&$texte) {

devenant

function f_queue($texte) {

Quelles conséquence peut avoir ce changement, il y a sûrement une
méthode plus propre pour résoudre ce bug. Est-ce que le passage par
référence est utile ici ?

C'est plutôt sur spip-devel qu'il faudrait poster ça.
Ou faire un ticket sur https://core.spip.net/projects/spip/issues (après inscription)

Bonne soirée.

Idem

--
RealET