Felix Riesterer: Werte in mehrdimensionalem Array ändern

Beitrag lesen

Liebe(r) doni,

da steckt ein Denkfehler im System!

foreach ($albums as $key => $row){ $row['date'] = date("d.m.y", $row['date']); }

Du gibst innerhalb einer Schleife die Anweisung, dass in der (Array-)Variablen $row, die in dieser Schleife erst erzeugt wird, und die nur eine Kopie von $albums[$key] ist, ein Wert geändert wird. Anschließend wunderst Du Dich, dass $albums unverändert bleibt...

Vergleiche einmal folgende Zeilen:

foreach ($albums as $key => $row) {  
// $key enthält Index zu $albums,  
// $row enthält eine Kopie des darin abgelegten Arrays  
// $row = array('title' => ..., 'date' => ...)  
  
$albums[$key]['date'] = ...

Liebe Grüße aus Ellwangen,

Felix Riesterer.