Hallo Freunde des gehobenen Forumsgenusses,
231d230
< $timeout = (int)round($timeout/2+0.00000000001);
237a237// nutze die möglichkeiten der stream-Funktionen, um auch ssl-Resourcen zu saugen
Ich werde das noch implementieren. Aus den Zahlen werde ich allerdings nicht schlau, was willst du mit denen ausdrücken?
251d250
< socket_set_timeout($pointer, $timeout);
271c270
< $head .= 'If-None-Match: '.((string)$etag)."\r\n";$head .= 'If-None-Match: '.$etag."\r\n";
274c273
< $head .= 'If-Modified-Since: '.date('D, d M Y H:i:s', abs((int)$lastget))." GMT\r\n";
$head .= 'If-Modified-Since: '.date('D, d M Y H:i:s', abs($lastget))." GMT\r\n";
276a276
// deflate vergessen => http://forum.de.selfhtml.org/archiv/2006/4/t128318/#m829037
Sehe ich das richtig, dass ich gzinflate verwenden muss, wenn der Server als "Content-Encoding: deflate" zurückschickt?
// Warum verarbeitest Du in Form einer Auffrischung nicht HTTP-Status 304? Letzen Teil bitte überarbeiten zumal Header während des Einlesens gleich geparst werden können
Darf man eine Verbindung einfach so abbrechen, wenn einen das Ergebnis nicht mehr interessiert?
98a89,90
// völlig überflüssige CPU-Last eine URL _ist_ eindeutig und einmalig, md5 und sha1 können u.U. gleiche
// Werte für verschiedene URLs liefern es ist überdenkenswerte hier mit einer Headerdatei für alle gespeicherten URLs zu arbeiten
In der Header-Datei stehen noch ein paar andere Informationen, wie ETag und Last-Modified, außerdem können URLs Zeichen enthalten, die nicht als Dateinamen erlaubt sind und sie können zu lang sein (hatte ich alles schon, war echt doof).
Die Wahrscheinlichkeit, dass unter n URLs zwei sind, die den gleichen MD5 _und_ den gleichen SHA1-Wert haben:
[latex]
1-\left(1-{1 \over {2^{128+160}}}\right)^n
[/latex]
Also ich halte das eindeutig für das kleinere Übel.
114d105
< $url = (string)$url;
119a111// warum prüfst Du mit is_int, um dann mit (int) zu konvertieren?
Wahrscheinlich habe ich zuerst den Typcast und dann die Abfrage geschrieben.
< $res = serialize($this->files);
// $res = serialize($this->files); redundant -> es wird unnötig Array-Key "url" mit abgespeichert, der ergibt sich aus dem Namen der Datei
$res=serialize($this->file['url']);
Die URL wird genau einmal gespeichert, und zwar als Schlüssel in diesem Array, da ist gar nichts redundant.
Gruß
Alexander Brock