Referencer i PHP
Hej Eksperter.Jeg arbejder i øjeblikket på et framework i PHP. I den forbindelse stødte jeg på nedenstående tekst på Zend.com :
"In PHP 5, the infrastructure of the object model was rewritten to work with object handles. Unless you explicitly clone an object by using the clone keyword you will never create behind the scene duplicates of your objects. In PHP 5, there is neither a need to pass objects by reference nor assigning them by reference."
http://www.zend.com/php5/andi-book-excerpt.php
Fra ovenstående forstår jeg, at det ikke længere er nødvendigt at sende objekter som referencer vha. &-tegnet - dette sker nu automatisk, hvorimod man tidligere fik en kopi hvis ikke man brugte &-tegnet.
En hurtig test viste dog, at det stadig er en kopi man arbejder på, hvis ikke man bruger &-tegnet. Så hvad er korrekt? Er det noget vrøvl de har skrevet på Zend's side, eller gør jeg noget forkert?
Et hurtigt eksempel :
<?php
class Test
{
public function increment($var)
{
$var++;
}
}
$num = 5;
echo "Værdi før increment: $num<br>"; // Udskriver 5
$t = new Test();
$t->increment($num);
echo "Værdi efter increment: $num"; // Udskriver 5
?>
