You can easily check mime type of an internet resource using this code :
<?php
function getUrlMimeType($url) {
$buffer = file_get_contents($url);
$finfo = new finfo(FILEINFO_MIME_TYPE);
return $finfo->buffer($buffer);
}
?>
I'm using it to detect if an url given by a user is a HTML page (so I do some stuff with the HTML) or a file on Internet (so I show an icon accordingly to the mime type).
finfo_buffer
(PHP 5 >= 5.3.0, PECL fileinfo >= 0.1.0)
finfo_buffer — Bir dizge tamponu hakkında bilgi döndürür
Açıklama
string finfo_buffer
( resource
$özkaynak
, string $dizge = NULL
[, int $seçenekler = FILEINFO_NONE
[, resource $bağlam = NULL
]] )
string buffer
( string
$dizge = NULL
[, int $seçenekler = FILEINFO_NONE
[, resource $bağlam = NULL
]] )Bu işlev bir dizge içindeki ikil veri hakkında bilgi edinmek için kullanılır.
Değiştirgeler
-
özkaynak -
finfo_open() işlevinden dönmüş bir Fileinfo özkaynağı.
-
dizge -
İçeriği incelenecek dizge.
-
seçenekler -
Fileinfo sabitlerinden biri veya bir kaçının birleşimi.
-
bağlam -
Bağlamlar hakkında bilgi edinmek için Akım İşlevleri bölümüne bakınız.
Dönen Değerler
Bir hata oluşmuşsa FALSE, aksi takdirde belirtilen dizgenin içeriği
hakkında açıklama dizgesi döner.
Örnekler
Örnek 1 - finfo_buffer() örneği
<?php
$finfo = new finfo(FILEINFO_MIME);
echo $finfo->buffer($_POST["betik"]) . "\n";
?>
Yukarıdaki örnek şuna benzer bir çıktı üretir:
application/x-sh; charset=us-ascii
contact at ingnu dot fr
20-Jun-2011 02:22
