Sobes.tech
Middle

Wat is het gedrag 'copy on write'?

sobes.tech AI

Antwoord van AI

Dit is een geheugenbeheeroptimalisatie in PHP (en andere talen/systemen), waarbij het kopiëren van de waarde van een variabele niet onmiddellijk plaatsvindt, maar pas wanneer geprobeerd wordt de kopie of de originele te wijzigen, als ze naar dezelfde plek in het geheugen verwijzen. Voor de wijziging verwijzen beide variabelen gewoon naar dezelfde gegevens.

<?php
$a = 'string'; // $a wijst naar een geheugenblok met de string "string"
$b = $a; // $b wijst nu ook naar hetzelfde geheugenblok, geen kopie wordt gemaakt

// Pas nu, bij het wijzigen van $b, creëert PHP een nieuwe kopie van de gegevens voor $b
$b .= ' gewijzigd';

echo $a; // Toont: string

echo $b; // Toont: string gewijzigd
?>