• # Plus à rien en php5 !

    Posté par  . Évalué à 9.

    Bonjour,

    le & préfixant un appel de fonction sert à désigner que la valeur de retour sera passée par référence plutot que par copie. Une des nouveautés de php5 est une gestion intelligente des valeurs de retour en fonction du type de valeur. Ce qui fait que tu n'as plus à te soucier d'utiliser l'opérateur & en php5, il est tout simplement superflu (sauf dans certains cas bien précis, et là tu le trouveras dans les paramètres d'une fonction/méthode, pas devant l'appel).

    Il avait par contre son utilité en php4, car par défaut en php4 la plupart des retours de valeur s'effectuaient par copie. Pour ton exemple : ca veut dire qu'un objet est créé lors du new, et un autre lors de l'affectation !

    C'est aussi l'explication du message "Call time pass reference has been deprecated in php5" que beaucoup de codeurs php ont pu rencontrer.

    Pour plus de détails, je t'invite à te plonger dans cette page : http://www.php.net/manual/fr/language.references.php

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.