Ho una matrice di oggetti stdClass. Quando assegno uno a una variabile, non sta copiando la variabile ma facendo riferimento alla variabile originale. Il mio codice è simile al seguente:Come si crea in modo esplicito una copia di una variabile in PHP?
for ($i = 0, $len = count($rows); $i < $len; $i++)
{
$row = $rows[$i];
echo $rows[$i]->games;
$row->games = 'test';
echo $rows[$i]->games;
}
Il primo echo emette il valore normale, ma il secondo echo emette "test". Anche se sto impostando la proprietà su $row
(che dovrebbe essere copiata), la sta effettivamente impostando sull'elemento originale dell'array.
Perché è questo e come si crea effettivamente una copia, in modo che la modifica della copia non modifichi l'originale?