Bonjour, j'ai depuis pas mal de temps un soucis avec un point précis :
comment puis-je créer une fonction qui accepte un nombre variable
d'arguments tout en conservant une référence sur les arguments...
L'appel de addObjects sous la forme
$truc->addObjects(&$obj);
provoque for logiquement le 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]().
Le problème c'est que comme il n'y a pas d'arguments dans la déclaration
de la fonction, je peux pas ajouter un & devant tel ou tel argument.
Je ne vois pas comment faire, et pourtant il m'est bien pratique d'écrire
:
$truc->addObjects($obj1,$obj2,$obj3,$obj4);
La seule solution que je vois consisterait à utiliser un array :
$objects[] =& $obj1;
$objects[] =& $obj2;
$objects[] =& $obj3;
$objects[] =& $obj4;
$truc->addObjects($objects); avec addObject déclarée comme addObjects(&
$objArray)
Ou alors, peut-être : $truc->addObjects(array(&$obj1,&$obj2,&$obj3)) ??
Qu'en pensez vous ?
Rien - si ce n'est que je ne vois guère d'autre solution propre et compréhensible.
-- bruno desthuilliers ruby -e "print ''.split('@').collect{|p| p.split('.').collect{|w| w.reverse}.join('.')}.join('@')"
Frederic Rouchouze
L'appel de addObjects sous la forme $truc->addObjects(&$obj); provoque for logiquement le 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]().
Je ne vois pas comment faire, et pourtant il m'est bien pratique d'écrire
J'ai rencontré le même problème ! Si quelqu'un a une solution correcte, ça m'intéresse... -- Frédéric Rouchouze mailto:
L'appel de addObjects sous la forme
$truc->addObjects(&$obj);
provoque for logiquement le 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]().
Je ne vois pas comment faire, et pourtant il m'est bien pratique d'écrire
J'ai rencontré le même problème ! Si quelqu'un a une solution correcte, ça
m'intéresse...
--
Frédéric Rouchouze
mailto:fredchou@nospam.free.fr
L'appel de addObjects sous la forme $truc->addObjects(&$obj); provoque for logiquement le 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]().
Je ne vois pas comment faire, et pourtant il m'est bien pratique d'écrire
J'ai rencontré le même problème ! Si quelqu'un a une solution correcte, ça m'intéresse... -- Frédéric Rouchouze mailto: