Axel Richter: arrayelement wird nicht gelöscht...

Beitrag lesen

Hallo,

$clid = $_GET['clid'];
  $open_file = @fopen($file,'a')
    or die("Konnte Datei <b>$open_file</b> nicht öffnen");
  flock($open_file,2);
  $file_array = file($file);
  foreach($file_array as $key => $value) { #array mit der betreffenden clid heraussuchen
    if(strpos($value, $clid) !== false) {
   $comment_edit = $file_array[$key];  #dieses in variable speichern
   unset($file_array[$key]); #sofort löschen

^siehe Anmerkung

}
  }


>   

Anmerkung:  
<http://de.php.net/manual/de/control-structures.foreach.php>  
...  
Anmerkung: Beachten Sie auch, dass foreach mit einer Kopie des angegebenen Arrays arbeitet, nicht mit dem Array selbst. Deshalb wird auch der Arrayzeiger nicht wie bei dem each()-Konstrukt verändert und Veränderungen an ausgegebenen Arrayelementen haben keine Auswirkung auf das originale Array. Trotzdem wird der interne Arrayzeiger des originalen Arrays bei der Verarbeitung bewegt. Angenommen, die foreach-Schleife ist komplett abgearbeitet, wird der interne Arrayzeiger (des originalen Arrays) auf das letzte Element zeigen.  
...  
  
viele Grüße  
  
Axel