導航:首頁 > 編程語言 > php判斷圖片格式

php判斷圖片格式

發布時間:2023-06-17 17:04:20

1. php 驗證上傳的文件類型為圖片,並獲得文件的後綴名

以下是我上傳了一個圖片後顯示的 $_FILES['filename']的信息
[filename] => Array
(
[name] => Winter.jpg
[type] => image/jpeg
[tmp_name] => /tmp/php2jw7QX
[error] => 0
[size] => 105542
)
其中type是文件類型的minitype 表示方法,例如普通的HTML的類型是text/html
如果你想用擴展名的方式判斷的話可以用以下代碼:
<?php
#允許的文件擴展名
$allowed_types = array('jpg', 'gif', 'png');
$filename = $_FILES['filename']['name'];
#正則表達式匹配出上傳文件的擴展名
preg_match('|\.(\w+)$|', $filename, $ext);
#print_r($ext);
#轉化成小寫
$ext = strtolower($ext[1]);
#判斷是否在被允許的擴展名里
if(!in_array($ext, $allowed_types)){
die('不被允許的文件類型');
}
?>

2. HTML PHP 中要判斷 $_FILES['file']['type'] 為 image 的話則顯示預覽圖片

<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg")){ //如果文件類型為gif、jpeg、pjpeg的話
?>
在這里寫上顯示圖片的代碼
<?php }?>

3. Php裡面判斷一個文件是不是一個真正的圖片

好像有一個函數getimagesize,他可以返回指定文件的信息,如果是一張圖片他會返回一個數組,可以查一下手冊

4. php怎麼判斷一個url是不是圖片

可以分析HTTP頭信息中的Content-Type。

php有獲取頭信息的函數get_headers():

//$url為圖片地址
$header=get_headers($url,1);
//$headers['Content-Type']是URL的類型
$type=explode('/',$headers['Content-Type']);
if($type[0]==='image'){
//這是一個圖片
}
else{
//這不是一個圖片
}

關於get_headers()的具體信息,可以參見:

PHP手冊:get_headers():http://php.net/manual/zh/function.get-headers.php

如果要寫成一個函數,就是:

functionis_image($url){
$header=get_headers($url,1);
$type=explode('/',$headers['Content-Type']);
if($type[0]==='image'){
//這是一個圖片
returnTRUE;
}
else{
//這不是一個圖片
returnFALSE;
}
}

這樣就可以了。

閱讀全文

與php判斷圖片格式相關的資料

熱點內容
什麼是適合自己的app 瀏覽:451
雲伺服器怎麼補漏洞 瀏覽:176
如何看自己的安卓是什麼等級 瀏覽:633
被丁磊挖走的程序員 瀏覽:19
gsk980ta編程 瀏覽:507
單片機離線 瀏覽:84
解壓助眠敲擊外國長指甲 瀏覽:421
3次元編程 瀏覽:803
夫妻傳送英文命令 瀏覽:316
程序員題代做 瀏覽:950
戴爾伺服器怎麼擴大內存 瀏覽:641
解壓包密碼消失 瀏覽:135
昆侖通態觸摸屏用戶窗加密 瀏覽:564
農信app怎麼看日額 瀏覽:865
iphone備忘錄包含視頻無法加密 瀏覽:283
抖音快手紅包源碼 瀏覽:137
程序員資源分析 瀏覽:586
linux交換分區大小 瀏覽:922
mt怎麼編譯 瀏覽:337
qq郵箱打開pdf 瀏覽:461