Het maakt eigenlijk niet uit wat je bewuste geest doet, omdat je onderbewuste automatisch precies dat doet wat het moet doen
Ik weet niet of het werkt, maar je zou het volgende kunnen proberen:Ik vroeg me af of er ook een manier is om met PHP de mime-type van een afbeelding uit een string op te vragen is.
- Data uit database halen
- Data even wegschrijven in een tijdelijk bestand
- Met mime_content_type() even kijken wat de Content-Type is
- Tijdelijke bestand verwijderen
Ja dat had ik zelf ook bedacht, maar dat is eigenlijk een beetje dirty.. ik neem aan de PHP gewoon de fileheader doorzoekt naar bepaalde sleutelwoorden. Dat moet hij met een string evengoed kunnen.
Op google is hier ook al niks over te vinden..
Op google is hier ook al niks over te vinden..
Het maakt eigenlijk niet uit wat je bewuste geest doet, omdat je onderbewuste automatisch precies dat doet wat het moet doen
Welke zoektermen heb je gebruikt? Als ik namelijk zoek op "determine content-type from string php" kom ik terecht op deze pagina: http://in.php.net/mime_content_typeDeathKnight24 schreef op vrijdag 27 februari 2009 @ 15:27:
Op google is hier ook al niks over te vinden..
Daar staat netjes uitgelegd hoe PHP de Content-Type bepaalt: "Returns the MIME content type for a file as determined by using information from the magic.mime file."
Ten eerste is die functie deprecated, en ten tweede kan die ook enkel met files omgaan.
Dit werkt overigens wel zoals ik al vermoede:
Maar ik blijf het onzinnig vinden om eerst iets op de hd weg te schrijven om het mimetype te bepalen...
Dit werkt overigens wel zoals ik al vermoede:
PHP:
1
2
3
4
5
6
7
| file_put_contents("temp", $row->$column); if (exif_imagetype('temp') != IMAGETYPE_GIF) { die("not gif"); } else { die("gif"); } |
Maar ik blijf het onzinnig vinden om eerst iets op de hd weg te schrijven om het mimetype te bepalen...
Het maakt eigenlijk niet uit wat je bewuste geest doet, omdat je onderbewuste automatisch precies dat doet wat het moet doen
Het meest failsafe wat ik kan verzinnen is de imagefrom* functies gebruiken. De functie die een resource returned is het filetype. Dus als imagecreatefromjpg werkt heb je een jpg. Er zijn functies voor oa. JPG, PNG, GIF en dat zullen wel de meeste files zijn al.
Oke, dat is een goed idee, kan ik straks nog even proberen als ik tijd heb. BedanktCartman! schreef op vrijdag 27 februari 2009 @ 15:54:
Het meest failsafe wat ik kan verzinnen is de imagefrom* functies gebruiken. De functie die een resource returned is het filetype. Dus als imagecreatefromjpg werkt heb je een jpg. Er zijn functies voor oa. JPG, PNG, GIF en dat zullen wel de meeste files zijn al.
Het maakt eigenlijk niet uit wat je bewuste geest doet, omdat je onderbewuste automatisch precies dat doet wat het moet doen
Over het algemeen worden die mimetypes bepaald aan de hand van magic numbers aan het begin van de file.
Wikipedia: Magic number (programming)
Lijkt me een stuk efficienter dan je image parsing routines eroverheen proberen te halen.
Wikipedia: Magic number (programming)
Lijkt me een stuk efficienter dan je image parsing routines eroverheen proberen te halen.
https://niels.nu
Gebruik de Fileinfo class. http://nl3.php.net/manual/en/function.finfo-buffer.php
Die kan ook met strings overweg.
Die kan ook met strings overweg.
Via PEAR is 'ie al beschikbaar en stableCartman! schreef op vrijdag 27 februari 2009 @ 16:25:
Jammer dat die pas vanaf PHP 5.3 erin zit en daar nog geen stable van is alleen
Pagina: 1