php判斷圖片類型,php判斷圖片鏈接是否有效

本文目錄一覽:

php判斷一個文件的類型是否為圖片格式(jpg gif png格式)用in array格式做

$kuozhan=array(‘jpg’,’gif’,’png’);

$flag = 1; // 判斷上傳文件是否格式正確,正確則為1 , 有一個格式錯誤則0

// 循環,檢測格式是否錯誤

foreach($val[‘tmp_name’] as $key=$us){

foreach($val[‘name’] as $key=$ns){

$arr=pathinfo($val[‘name’][$key]);

if(!in_array($arr[‘extension’],$kuozhan)){

echo ” 上傳失敗,格式錯誤!”;

$flag = 0; // 格式有錯,flag為0

break;

}

}

}

// 上傳文件

if ($flag == 1) {

循環上傳文件

}

php判斷文件是不是圖片

利用getimagesize函數:

function isImage($filename){

    $types = ‘.gif|.jpeg|.png|.bmp’;//定義檢查的圖片類型

    if(file_exists($filename)){

        $info = getimagesize($filename);

        $ext = image_type_to_extension($info[‘2’]);

        return stripos($types,$ext);

    }else{

        return false;

    }

}

if(isImage(‘test.jpg’)!==false){

    echo ‘是圖片’;

}else{

    echo ‘不是’;

}

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():

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

function is_image($url) {

    $header = get_headers($url, 1);

    $type   = explode(‘/’, $headers[‘Content-Type’]);

    if ($type[0] === ‘image’) {

        // 這是一個圖片

        return TRUE;

    }

    else {

        // 這不是一個圖片

        return FALSE;

    }

}

這樣就可以了。

PHP 圖片類型判斷 生成

你的代碼不是都寫好的嗎,你在程序裡面echo $file_type ;分別上傳jpg、gif等圖片,看看輸出的類型的編碼是什麼,然後在程序裡面分別判斷即可,例如:

if ( $file_type == ‘???測試中看見的結果???’) $img_r = imagecreatefromjpeg($src);

elseif ( $file_type == ‘???測試中看見的結果???’) $img_r = imagecreatefromgif($src);

我的程序是使用的下面的方式檢測文件類型,並且修正擴展名:

$tmp_name=$_FILES[“$f_image”][tmp_name];

$imginfo=getimagesize($tmp_name);

//壓縮寬度超過1024的圖片為1024,100K以上的JPG圖片用30%進行壓縮

if ($imginfo[0]1024){

echo “你上傳的圖片幅面為 $imginfo[0] x $imginfo[1] ,將被壓縮到1024個象素寬。br”;

system(‘”C:\Program Files\ImageMagick-6.0.7-Q16\convert.exe”‘.” -sample 1024 -quality 80 $tmp_name $tmp_name”);

} elseif($imginfo[2]==2 $src_size102400) system(‘”C:\Program Files\ImageMagick-6.0.7-Q16\convert.exe”‘.” -quality 60 $tmp_name $tmp_name”);

//規範化圖片文件擴展名

if ($imginfo[2]==1) $ext=’gif’;

elseif ($imginfo[2]==2) $ext=’jpg’;

elseif ($imginfo[2]==3) $ext=’png’;

elseif ($imginfo[2]==4) $ext=’swf’;

elseif ($imginfo[2]==5) $ext=’psd’;

elseif ($imginfo[2]==6) $ext=’bmp’;

elseif ($imginfo[2]==7) $ext=’tiff’;

elseif ($imginfo[2]==8) $ext=’tiff’;

//壓縮BMP、TIFF文件為JPG格式

if ($imginfo[2]==6 || $imginfo[2]==7 || $imginfo[2]==8){

system(‘”C:\Program Files\ImageMagick-6.0.7-Q16\convert.exe”‘.” -quality 80 $tmp_name $tmp_name.jpg”);

rename(“$tmp_name.jpg”,$tmp_name);

$ext=’jpg’;

}

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/193610.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-01 15:03
下一篇 2024-12-01 15:03

相關推薦

  • int類型變數的細節與注意事項

    本文將從 int 類型變數的定義、聲明、初始化、範圍、運算和類型轉換等方面,對 int 類型變數進行詳細闡述和講解,幫助讀者更好地掌握和應用 int 變數。 一、定義與聲明 int…

    編程 2025-04-29
  • 用Python繪製酷炫圖片

    在本篇文章中,我們將展示如何使用Python繪製酷炫的圖片。 一、安裝Python繪圖庫 在使用Python繪製圖片之前,我們需要先安裝Python繪圖庫。Python有很多繪圖庫…

    編程 2025-04-29
  • Python3定義函數參數類型

    Python是一門動態類型語言,不需要在定義變數時顯示的指定變數類型,但是Python3中提供了函數參數類型的聲明功能,在函數定義時明確定義參數類型。在函數的形參後面加上冒號(:)…

    編程 2025-04-29
  • Python基本數字類型

    本文將介紹Python中基本數字類型,包括整型、布爾型、浮點型、複數型,並提供相應的代碼示例以便讀者更好的理解。 一、整型 整型即整數類型,Python中的整型沒有大小限制,所以可…

    編程 2025-04-29
  • 使用axios獲取返回圖片

    使用axios獲取返回圖片是Web開發中很常見的需求。本文將介紹如何使用axios獲取返回圖片,並從多個方面進行詳細闡述。 一、安裝axios 使用axios獲取返回圖片前,首先需…

    編程 2025-04-29
  • Python 圖片轉表格

    本文將詳細介紹如何使用Python將圖片轉為表格。大家平時在處理一些資料的時候難免會遇到圖片轉表格的需求。比如從PDF文檔中提取表格等場景。當然,這個功能也可以通過手動複製、粘貼,…

    編程 2025-04-29
  • Python中的Bool類型判斷

    本篇文章旨在講解Python中的Bool類型判斷。在Python中,Bool類型是經常使用的一種類型,因此掌握其用法非常重要。 一、True和False 在Python中,True…

    編程 2025-04-29
  • Python緩存圖片的處理方式

    本文將從多個方面詳細闡述Python緩存圖片的處理方式,包括緩存原理、緩存框架、緩存策略、緩存更新和緩存清除等方面。 一、緩存原理 緩存是一種提高應用程序性能的技術,在網路應用中流…

    編程 2025-04-29
  • Python如何抓取圖片數據

    Python是一門強大的編程語言,能夠輕鬆地進行各種數據抓取與處理。抓取圖片數據是一個非常常見的需求。在這篇文章中,我們將從多個方面介紹Python如何抓取圖片數據。 一、使用ur…

    編程 2025-04-29
  • Python函數類型有哪些

    本文將從以下幾個方面詳細闡述Python函數類型。 一、內置函數 Python的內置函數是指在Python編程語言中提供的可以直接使用的函數,不需要通過導入模塊等方式引入。 部分常…

    編程 2025-04-29

發表回復

登錄後才能評論