Sobes.tech
Middle

Mi az a 'copy on write' viselkedés?

sobes.tech MI

Válasz az MI-től

Ez egy memória kezelés optimalizáció PHP-ben (és más nyelvek/rendszerek esetén), ahol egy változó értékének másolása nem azonnal történik meg, hanem csak akkor, amikor megpróbáljuk módosítani a másolatot vagy az eredetit, ha mindkettő ugyanarra a memóriahelyre hivatkozik. Módosítás előtt mindkét változó egyszerűen ugyanarra az adatra hivatkozik.

<?php
$a = 'lánc'; // $a egy memória blokkra mutat, amely a "lánc" sztringet tartalmazza
$b = $a; // $b most szintén ugyanarra a memória blokkra mutat, másolás nem történik

// Csak most, amikor módosítjuk $b-t, a PHP létrehoz egy új másolatot az adatokból $b számára
$b .= ' módosítva';

echo $a; // Kiírja: lánc

echo $b; // Kiírja: lánc módosítva
?>