Sobes.tech
Middle

Co je to chování 'copy on write'?

sobes.tech AI

Odpověď od AI

Toto je optimalizace správy paměti v PHP (a dalších jazycích/systémech), při které kopírování hodnoty proměnné neprobíhá ihned, ale až při pokusu o změnu kopie nebo originálu, pokud oba odkazují na stejné místo v paměti. Před změnou obě proměnné jednoduše odkazují na stejná data.

<?php
$a = 'řetězec'; // $a odkazuje na blok paměti s řetězcem "řetězec"
$b = $a; // $b nyní také odkazuje na stejný blok paměti, kopírování se neprovádí

// Až nyní, při změně $b, PHP vytvoří novou kopii dat pro $b
$b .= ' změněn';

echo $a; // Vypíše: řetězec

echo $b; // Vypíše: řetězec změněn
?>