jag satt och pysslade lite med att öppna en textfil, fread fopen foo.fcg etc.. och kom då att tänka på att filen kan ha rätt filändelse (vilket man oftast kollar), men annan header / mime, som att skicka php som bild etc
hur kan man snabbt kolla en fil om den har rätt mime ? ex (text/text)
En mime-typ är väl inget som finns i filsystemet utan något som du sätter när du ska skicka filen.
En textfil kan man lätt känna igen på en liten frekvensanalys. 0x0d och 0x20 är vanliga i en textfil, 0x00 förekommer inte och överhuvudtaget värden under 0x20 är mycket sällsynta (med undantag för 0x09 och 0x0a som också kan förekomma). 0x30-0x39 (siffror), 0x40-0x5a (stora bokstäver), 0x60-0x7a (små bokstäver) är också mycket vanliga. Tecken ovanför 0x7f är ovanliga.
Har du slumpmässig spridning över hela spektrat, eller 0x00 förekommer, så är det en binärfil.
En jpg-fil har för övrigt JFIF på sjunde tecknet. Png har PNG på andra tecknet. Gif har GIF som första tecken.
Prova att öppna lite olika filtyper och undersök dem så ser du snart hur du identifierar dem.