Kopie van een object linkt de kenmerken!
Als ik een object heb met de naam obj1 en ik kopieer dit als volgt:
Het gekke is dat nu de kenmerken gelijk zijn nl: "Tweede"
Is dit een bug?
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
$obj1 = new class1();
$obj1->kenmerk = "Eerste";
$obj2 = $obj1;
$obj2->kenmerk = "Tweede";
var_dump($obj1->kenmerk,$obj2->kenmerk);
?>
$obj1 = new class1();
$obj1->kenmerk = "Eerste";
$obj2 = $obj1;
$obj2->kenmerk = "Tweede";
var_dump($obj1->kenmerk,$obj2->kenmerk);
?>
Het gekke is dat nu de kenmerken gelijk zijn nl: "Tweede"
Is dit een bug?
Gewijzigd op 01/01/1970 01:00:00 door Chris Avontuur
$obj2 = $obj1;
Dit is geen kopie.
Objecten in php worden by reference doorgegeven.
Wat jij doet, is twee variabelen maken die naar het echte object wijzen.
Wil jij een object kopiëren, dan doe je
$obj2 = clone $obj1;
Maar lees vooral toch wat staat in de links die Karl postte.
Dit is geen kopie.
Objecten in php worden by reference doorgegeven.
Wat jij doet, is twee variabelen maken die naar het echte object wijzen.
Wil jij een object kopiëren, dan doe je
$obj2 = clone $obj1;
Maar lees vooral toch wat staat in de links die Karl postte.
Gewijzigd op 01/01/1970 01:00:00 door Emmanuel Delay
@ Karl & Emmanuel Delay,
Thnx, Heeft me gisteren nogal wat zweetdruppels gekost voor ik er achter was.
Thnx, Heeft me gisteren nogal wat zweetdruppels gekost voor ik er achter was.