phpbar.de logo

Mailinglisten-Archive

[php] zeile in txt datei ersetzen?

[php] zeile in txt datei ersetzen?

Andreas Demmer php at andreas-demmer.de
Mon Jun 21 17:10:02 CEST 2004


Christian Schafer schrieb:

> ja da bin ich auch drauf gekommen, aber gibt es denn wirklich keinen
> eleganteren weg? meine csv dateien sind alle so um die 10-15 mb
> gross... 

Wenn Du ein Tempfile nutzt, hast Du immer nur max. 1 Zeile im Speicher:

<?php
$inputFile = 'test.dat';
$tempFile = 'temp.dat';

$input = fopen($inputFile, 'r');
$output = fopen($tempFile, 'w+');

$zeilennummer = 0;

while($zeile = fgetcsv($input, 1024, ',') ){
    $zeilennummer++;
    
    if($zeilennummer === 1) {
        //mach was
    }
    
    fwrite($output, implode('', $zeile)."\n");
}

fclose($input);
unlink($inputFile);
rename($tempFile, $inputFile);
?>

Gruss,
Andreas

-- 
http://www.andreas-demmer.de



php::bar PHP Wiki   -   Listenarchive