bonjour,
je me demande à quoi sert le "&" dans la création des objets, par exemple :
est ce comme le @, pour la gestion d'erreurs ou c'est plutot notion de pointeur et adressage ?Code:
1
2 $obj = &new Object();
merci d'avance ;)
Version imprimable
bonjour,
je me demande à quoi sert le "&" dans la création des objets, par exemple :
est ce comme le @, pour la gestion d'erreurs ou c'est plutot notion de pointeur et adressage ?Code:
1
2 $obj = &new Object();
merci d'avance ;)
En php (comme dans beaucoup de langages) le & sert a définir une "référence".
Ca sert par exemple à avoir deux noms différents qui correspondent à la meme variable ou encore a modifier une variable quand tu la passes en paramètre d'une fonction, etc.
C'est expliqué la : Manuel
Par contre, je ne comprends pas exactement l'intéret de mettre le & juste avant un new, quelqu'un va peut-être nous éclairer la dessus!
EDIT: ce post fait doublon avec Autre post qui parle de la même chose
je dirais que c'est dans le cas ou t'as besoin de manipuler un objet via un autre, par ex :
:?Code:
1
2
3
4
5
6
7
8 function fct($o) { // traitements sur l'objet lui même } $obj = &new Object(); fct(&$obj);
Salut,
En PHP4, le & avant un new était utilisé pour manipuler l'objet par référence plutôt que par copie.
Depuis PHP5, les objets sont toujours des références et cette utilisation est donc obsolète.
Comme noté dans page de doc sur les références :
Citation:
Depuis PHP 5, new retourne une référence automatiquement, donc, l'utilisation de =& dans ce contexte est obsolète et produit un message de degré E_STRICT.