pointers naar objecten
// ik maak een nieuw object in een array:
$mijn_objecten = array();
$mijn_objecten[5] = new Auto(20); // hier geef ik tevens een snelheid van 20
// ik wil een referentie naar dit object zetten
$object_referentie = $mijn_objecten[5];
// dan verandert ik een veriabele via de $object_referentie:
$object_referentie->setSnelheid(100);
echo $mijn_objecten[5]->getSnelheid(); // geeft 20
echo $object_referentie->getSnelheid(); // geeft 100
// dit geeft niet het gewenste resultaat, ze zouden beiden 100 moeten geven
// a. In Java werkt deze manier van werken wel
// b. In PHP lukt het blijkbaar niet, wat doe ik fout?
// c. of is deze manier van werken gewoon onmogelijk in PHP ?
$mijn_objecten = array();
$mijn_objecten[5] = new Auto(20); // hier geef ik tevens een snelheid van 20
// ik wil een referentie naar dit object zetten
$object_referentie = $mijn_objecten[5];
// dan verandert ik een veriabele via de $object_referentie:
$object_referentie->setSnelheid(100);
echo $mijn_objecten[5]->getSnelheid(); // geeft 20
echo $object_referentie->getSnelheid(); // geeft 100
// dit geeft niet het gewenste resultaat, ze zouden beiden 100 moeten geven
// a. In Java werkt deze manier van werken wel
// b. In PHP lukt het blijkbaar niet, wat doe ik fout?
// c. of is deze manier van werken gewoon onmogelijk in PHP ?
Gewijzigd op 01/01/1970 01:00:00 door UltimateWeapon
Zo te zien werk je met PHP4. PHP4 maakt een kopie van het object waar PHP5 een referentie geeft.
Ik ben niet erg thuis in dit soort dingen, maar ik dacht dat je via iets als
$object_referentie &= $mijn_objecten[5];
$object_referentie = &$mijn_objecten[5];
wel zou moeten lukken.
Ik ben niet erg thuis in dit soort dingen, maar ik dacht dat je via iets als
$object_referentie = &$mijn_objecten[5];
wel zou moeten lukken.
Gewijzigd op 01/01/1970 01:00:00 door Bo az
Dit werkt. Ik gebruik inderdaad PHP 4.
Bedankt voor de info.
Bedankt voor de info.
Gewijzigd op 01/01/1970 01:00:00 door UltimateWeapon