phpbar.de logo

Mailinglisten-Archive

[php] Re: Wie gross wird ein Bild ...

[php] Re: Wie gross wird ein Bild ...

Norbert Pfeiffer php_(at)_phpcenter.de
Thu, 27 Jun 2002 01:29:21 +0200


Hallo Joerg,

> > ordentlicherweise schickt man einige Header einer Datei voraus
> > z.B.
> > header("Content-Type: image/gif");
> > header("Content-Length: 12345");
> > Wie ist das eigentlich bei dynamischen Bildern ?
> > Habe keine Funktion gefunden, die die Groesse des Bildes angibt.
> Buffern der Ausgabe mittels ob_start(), rrfragen der Buffergr. und
> Ausgabe dieser als Content-length koennte evtl eine Loesung sein.
Test:
<?
ob_start();
...
Header("Content-type: image/png");
ImagePNG($img);
ImageDestroy($img);
Header("Content-length: ".strlen(ob_get_contents()));
?>
erzeugt ein:
Warning: Cannot add header information - headers already sent in
/usr/local/httpd/htdocs/npf/vote/vote.id.php on line 23
<zitat>
Die Ausgabesteuerungsfunktionen gelten ... nur für Daten, die
mit echo() gesendet wurden oder für Daten zwischen PHP-Codeblöcken.
<zitat>

Derzeit loese ich das Problem, indem ich das Image in ein temp.png
schreiben lasse, die filesize(); bestimme und die Daten per
readfile(); ausgeben. Das ist aufwendig, da man die TempNamen so
erzeugen muss, dass konkurierende Scripte nicht den gleichen
Namen erzeugen. Mit tmpfile(); kommt man da nicht weiter.
Das ist IMHO alles weder elegant noch performant ... :-((


m. b. G. Norbert
_____________________
normal:  02292-681769
Notruf:  0177-2363368
---------------------
e.o.m.


php::bar PHP Wiki   -   Listenarchive