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

熱點內容
java帶參數的線程 瀏覽:913
為什麼安卓車載中控屏看起來很差 瀏覽:466
吃雞怎麼解壓最快 瀏覽:968
linux網路編程基礎 瀏覽:219
產研是程序員嗎 瀏覽:594
程序員的法律 瀏覽:969
編程第四關用冰雪火焰閃現通關 瀏覽:756
批處理當前文件夾參數 瀏覽:185
鴻蒙安卓如何下載 瀏覽:904
開3389命令 瀏覽:542
程序員大都單純嗎 瀏覽:915
APP如何實現下載功能 瀏覽:216
通達信源碼怎樣放到桌面 瀏覽:645
程序員的腦袋會禿嗎 瀏覽:455
為什麼eve登錄啟動不進去伺服器 瀏覽:272
微信招生app哪個好用 瀏覽:233
寶可夢劍盾啟動文件在哪個文件夾 瀏覽:765
壓縮機比容 瀏覽:117
python自動化測試面試 瀏覽:949
買便宜點的鞋子去哪個app買 瀏覽:890