Mailinglisten-Archive |
Daniel Jänecke schrieb > ich würde den Bild-Typ nicht über die File-Endung, sondern über > den Header feststellen; der steht nach dem Upload in $userfile_type > und ist für gif und jpg halt entweder image/gif oder image/pjpeg. Ist > einfach eindeutiger als die Endung, da hier der tatsächliche Typ > berücksichtigt wird... Das ist nicht richtig. Die zuverlässigste Möglichkeit, mit PHP-Standard-Funktionen zwischen GIF- und JPEG-Grafiken zu unterscheiden, ist IMHO die Verwendung von GetImageSize(). GetImageSize() ermittelt den Dateityp (GIF, JPEG, PNG oder ggf. SWF) unabhängig von manipulierbaren Extensions und Headern. Es liest die ersten paar Bytes der Grafik-Datei und vergleich diese mit bestimmten Mustern: aus image.c /* file type markers */ const char php3_sig_gif[3] = {'G', 'I', 'F'}; const char php3_sig_jpg[3] = {(char) 0xff, (char) 0xd8, (char) 0xff}; const char php3_sig_png[8] = {(char) 0x89, (char) 0x50, (char) 0x4e, (char) 0x47, (char) 0x0d, (char) 0x0a, (char) 0x1a, (char) 0x0a}; und bitte lies learn.to/quote (auch für Deine Newsgroup-Postings). Guido Haeger
php::bar PHP Wiki - Listenarchive