En PHP, la fonction des paramètres peuvent être passés par référence en ajoutant le signe du paramètre dans la déclaration de la fonction, comme ceci:
function foo(&$bar)
{
// ...
}
Maintenant, je suis conscient que c'est pas conçue pour améliorer les performances, mais également de permettre à des fonctions de modifier les variables qui sont normalement hors de leur portée.
Au lieu de cela, PHP semble utiliser la Copie Sur Écriture pour éviter la copie d'objets (et peut-être aussi des tableaux) jusqu'à ce qu'ils soient modifiés. Donc, pour les fonctions qui ne changent pas leurs paramètres, l'effet doit être le même que si vous aviez passé par référence.
Cependant, je me demandais si la Copie de la logique d'Écriture est peut-être shortcircuited sur le laisser-passer-par-référence de et si qui n'a aucun impact sur les performances.
ETA: Pour être sûr, je suppose que ce n'est pas plus rapide, et je suis bien conscient que ce n'est pas ce que les références sont pour. Donc, je pense que mes propres suppositions sont très bonnes, je suis à la recherche d'une réponse de quelqu'un qui sait vraiment ce qui est certainement qui passe sous le capot. En cinq ans de développement en PHP, j'ai toujours trouvé qu'il est difficile d'obtenir des informations de qualité sur PHP internals court à partir de la lecture de la source.