導航:首頁 > 編程語言 > 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判斷圖片格式相關的資料

熱點內容
加班程序員暈倒 瀏覽:70
java無邊框 瀏覽:128
蘋果如何把app數據拷貝到新手機 瀏覽:741
程序員電腦桌多寬 瀏覽:612
萊陽到青島源碼 瀏覽:385
php顯示星期幾 瀏覽:169
phpfun 瀏覽:868
wdcpphp安裝路徑 瀏覽:112
python拼音多音字 瀏覽:501
發動機壓縮比951 瀏覽:473
androidnetfilter 瀏覽:559
ci隱藏indexphp 瀏覽:439
視頻外發加密軟體限次數播放 瀏覽:680
刺激戰場輕量服怎麼換伺服器 瀏覽:492
一般買書上什麼app 瀏覽:220
php開發框架2017 瀏覽:69
電腦控制單片機 瀏覽:626
ios15如何修改app名稱 瀏覽:862
linuxphp安裝mysql資料庫 瀏覽:271
程序員怎麼鍛煉身體 瀏覽:102