Mailinglisten-Archive |
Aloha,
Damit ich dynamische Seiten auf dem Server cachen kann, habe ich folgende
Klasse geschrieben.
Nun kommt es zwischendurch vor, dass die erzeugten Dateien 0 Bytes gross
sind. Wie könnte man dieses Problem beheben?
<?php
....
function endCache()
{
if($this->cacheIsEnabled)
{
$cacheContents = ob_get_contents();
ob_end_flush();
$fp = fopen($this->cacheFilename, 'w');
fwrite($fp, $cacheContents);
fclose($fp);
}
}
}
?>
Klassischer Fehler. Da fehlt irgendeine Art von locking. Wenn 2
oder mehr Programme versuchen in die gleiche Datei zu schreiben,
gibts Kuddelmuddel.
--> http://de3.php.net/manual/de/function.flock.php
-----> Die User Contributed Notes und Warnung sind lesenswert.
Grüße, Frohes Fest, guten Rutsch,
Mathias
php::bar PHP Wiki - Listenarchive