pass-by-reference en PHP

WRInaute accro
J'ai vu que le passage de paramètre par référence en PHP était deprecated, ce qui génère des messages de warning du style

Code:
> *Warning*: Call-time pass-by-reference has been deprecated - argument 
> passed by value; If you would like to pass it by reference, modify the 
> declaration of [runtime function name]().

Quelqu'un sait comment ça a évolué dans les versions suivantes de PHP ?
 
WRInaute discret
Salut,

Humm, deprecier ??
je ne pense pas.
http://www.php.net/manual/fr/language.r ... s.pass.php

Toutefois, si tu souhaites ne pas utilise de reference.
Utilise une variable globale dans ta fonction:
Code:
<?php
$MyGlobal = 'Une variable';
printGlobal();
function printGlobal() {
    global $MyGlobal;

    echo $MyGlobal;
}
?>

concernant les versions suivantes, je ne sais pas, mais il me semble que php5 supporte les references.
 
WRInaute passionné
Apparemment au vu de ton erreur, ce qui est déprécié c'est de passer un argument par référence alors qu'il n'est pas déclaré comme tel dans la définition de la fonction.
Si tu mets function NomdeLaFonction(&argument1,argument2) tu ne devrais plus avoir ce problème.
 
WRInaute accro
Dj_Apx a dit:
Apparemment au vu de ton erreur, ce qui est déprécié c'est de passer un argument par référence alors qu'il n'est pas déclaré comme tel dans la définition de la fonction.
Si tu mets function NomdeLaFonction(&argument1,argument2) tu ne devrais plus avoir ce problème.

Ah, ok, c'est tout simplement ça. Vu d'autres trucs que j'ai lu en cherchant un peu, ton interprétation semble la bonne.
Merci.
 
Discussions similaires
Haut