Sobes.tech
Middle

¿Qué es el comportamiento de 'copiar al escribir'?

sobes.tech AI

Respuesta de la IA

Esta es una optimización en la gestión de memoria en PHP (y otros lenguajes/sistemas), donde la copia del valor de una variable no se realiza inmediatamente, sino solo cuando se intenta modificar la copia o la original, si ambas hacen referencia al mismo lugar en la memoria. Antes de la modificación, ambas variables simplemente apuntan a los mismos datos.

<?php
$a = 'cadena'; // $a apunta a un bloque de memoria con la cadena "cadena"
$b = $a; // $b ahora también apunta al mismo bloque de memoria, no se realiza copia

// Solo ahora, al modificar $b, PHP crea una nueva copia de los datos para $b
$b .= ' modificada';

echo $a; // Mostrará: cadena
echo $b; // Mostrará: cadena modificada
?>