mimetype-bepalen
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
function get_mime($file)//Specificeer pad naar het bestand
{
$handle=fopen($file,'rb'); //Open het bestand in binaire modus
$data=bin2hex(fread($handle,24)); //Lees de eerste 14 bytes uit het bestand en zet deze in hexadecimale notatie
switch($data) //Gebruik switch controlestructuur voor verificatie
{
case '424d'==substr($data,0,4): //Normaliter neemt 1 hex digit 4 bits in. Door typecasting conversie naar string, dus 1 byte
return 'image/x-bmp';
break;
case '5c783838504e47'==substr($data,0,14):
return 'image/x-png';
break;
case '89504e47'==substr($data,0,8):
return 'image/x-png';
break;
case '504e47'==substr($data,0,6):
return 'image/x-png';
break;
case 'ffd8ffe000104a4649460001'==substr($data,0,24):
return 'image/jpeg';
break;
case '68736931'==substr($data,0,8):
return 'image/x-jpeg';
break;
case '47494638'==substr($data,0,8):
return 'image/x-gif';
break;
default:
return false; //Als het patroon niet wordt gevonden...
}
fclose($handle);
}
?>
function get_mime($file)//Specificeer pad naar het bestand
{
$handle=fopen($file,'rb'); //Open het bestand in binaire modus
$data=bin2hex(fread($handle,24)); //Lees de eerste 14 bytes uit het bestand en zet deze in hexadecimale notatie
switch($data) //Gebruik switch controlestructuur voor verificatie
{
case '424d'==substr($data,0,4): //Normaliter neemt 1 hex digit 4 bits in. Door typecasting conversie naar string, dus 1 byte
return 'image/x-bmp';
break;
case '5c783838504e47'==substr($data,0,14):
return 'image/x-png';
break;
case '89504e47'==substr($data,0,8):
return 'image/x-png';
break;
case '504e47'==substr($data,0,6):
return 'image/x-png';
break;
case 'ffd8ffe000104a4649460001'==substr($data,0,24):
return 'image/jpeg';
break;
case '68736931'==substr($data,0,8):
return 'image/x-jpeg';
break;
case '47494638'==substr($data,0,8):
return 'image/x-gif';
break;
default:
return false; //Als het patroon niet wordt gevonden...
}
fclose($handle);
}
?>