Middle
Czym jest zachowanie 'copy on write'?
sobes.tech AI
Odpowiedź od AI
To jest optymalizacja zarządzania pamięcią w PHP (i innych językach/systemach), w której kopiowanie wartości zmiennej nie odbywa się od razu, lecz tylko wtedy, gdy próbujemy zmienić kopię lub oryginał, jeśli oba odwołują się do tego samego miejsca w pamięci. Przed zmianą obie zmienne po prostu odwołują się do tych samych danych.
<?php
$a = 'łańcuch'; // $a wskazuje na blok pamięci z łańcuchem "łańcuch"
$b = $a; // $b teraz również wskazuje na ten sam blok pamięci, kopia nie jest tworzona
// Dopiero teraz, przy zmianie $b, PHP tworzy nową kopię danych dla $b
$b .= ' zmieniony';
echo $a; // Wyświetli: łańcuch
echo $b; // Wyświetli: łańcuch zmieniony
?>