Citat:
Originally posted by eliasson@Mar 23 2007, 06:20
Jag som trodde php5 var bakåtkompitabel med php4 men så kanske inte är fallet, jag använder bara php5 iallafall.
|
Det mesta är antagligen ganska bakåtkompatibelt, men gamla script som skrevs för PHP3 lär inte fungera lika bra i PHP5 som i PHP4... och så vidare... Sedan skiljer sig ju objektmodellen ganska mycket, och objekt kopieras inte längre vid variabeltilldelning (vad jag minns kopieras objekt i PHP4 om man inte explicit använder "&" vid tilldelningen).
Dvs i PHP4 kan man tänkas ha en kodsnutt som ser ut så här:
Citat:
$a = new stdClass();
$a->data = "Hej";
$b = $a; // $a kopieras och $b blir en identisk kopia
$b = null;
echo $a->data; // skriver ut "Hej"
|
I PHP 5 skulle inget skrivas ut, eftersom $b inte är en kopia av $a, utan en kopia av en referens till $a. När man alltså skriver $b = null blir även $a = null.
Jag reserverar mig för felaktigheter i ovanstående utsaga, eftersom jag inte har orkat kolla upp hur det verkligen förhåller sig...