Hallo
Hab aktuell das Problem, dass wenn ich größere Daten mit php bearbeite die ersten Resultate sehr schnell geliefert werden, dann wird das Script langsamer und langsamer, und irgendwann stoppt es.
Ein Beispiel ich habe hier ein Script das mir Bilder runterladen soll, es extrahiert die Links zu den Bildern aus einer Csv und kopiert diese,benennt das Bild und schreibt den neuen Namen in die Csv.
PHP-Code:
ini_set("max_execution_time", false);
function prepareFile($filename) {
$data = file($filename);
$number = count($data);
$newdata = array_shift($data);
$state = 1;
foreach($data as $dataset) {
$arrDataset = explode (';', $dataset);
$imagepath = str_replace( '"', '', $arrDataset[9]);
if(!$imagepath == '') {
$image = strrchr($imagepath, '/');
$image = substr($image, 1);
copy($imagepath, 'bilder/'.$image);
echo " Bild $state von $number Bildern wurde erfolgreich kopiert <br />";
if(!is_file('bilder/'.$image))
echo "Bild nicht kopiert: ".$image."<br />";
$arrDataset[9] = '"'.$image.'"';
}
$newdata .= implode(';', $arrDataset);
$state++;
}
$handle = fopen($filename, 'w');
if(fwrite($handle, $newdata)) {
fclose ($handle);
} else {
die("Datei ".$filename." konnte nicht neu geschrieben werden.");
}
}
prepareFile("bilder.csv");
Nun bei 2000 Bildern werden 900 wirklich rasend schnell runtergeladen, dann auf einmal stoppt es (ewiges laden ) und bricht ab(keine fehlermeldung).
An was liegt das und wie kann ichs fixen? Und was muss ich beachten, wenn ich mit größeren Dateimengen arbeite?
ich hoffe ihr könnt mir helfen
liebe Grüße
Necronomicon